网站建设项目简介,网站建设600元全包,外包网有哪些,英文版的wordpress能否改中文版简介#xff1a; 1.要了解多线程#xff0c;首先我们得先了解进程和线程。那么什么是进程#xff1f;进程就是一个正在运行的程序分配内存让应用程序能够运行的叫做进程。那么什么又是线程呢#xff1f;线程#xff1a;在一个程序中#xff0c;负责代码的执行#xff0c…简介 1.要了解多线程首先我们得先了解进程和线程。那么什么是进程进程就是一个正在运行的程序分配内存让应用程序能够运行的叫做进程。那么什么又是线程呢线程在一个程序中负责代码的执行就是一个进程中的执行路劲的称为线程。然而在一个进程中同时又多个线程在执行不同的任务时我们就称为多线程。 2.我们为什么要使用多线程呢因为在一个进程中有时候执行的任务不仅仅只执行的是一个任务有可能同时在执行多个任务这时候我们就得用到多线程来解决这个问题比如说售票比如有三个窗口同时在卖同一类型的50张票窗口一卖了第50张那么还剩49张在卖第49张票的时候有可能是第一个窗口卖出的第49 张票也有可能是第二个窗口卖出的第49张票也有可能是第三个窗口卖出去所有这个时候我们就用到多线程来解决这个问题。那么按上面举的例子我们怎么用代码来实现这个功能呢 代码实现 : class SaleTickets extends Thread{//设置总票数static int num 50;static Object o new Object();public SaleTickets(String name){super(name);}//重写Thread的Run方法public void run() {//用一个循环来模拟卖票的功能while (true) {//加锁synchronized (锁) {//为了更好的看到效果让它睡眠0.5秒try {Thread.sleep(500);} catch (InterruptedException e) {e.printStackTrace();}if (num 0) {System.out.println(this.getName()卖了第num张票);num--;}else {System.out.println(票已经卖完);break;}}}}}public class Demo2 {public static void main(String[] args){SaleTickets s1 new SaleTickets(窗口1);s1.start();//开线程SaleTickets s2 new SaleTickets(窗口2);s2.start();//开线程SaleTickets s3 new SaleTickets(窗口3);s3.start();//开线程}} 总结 使用多线程能帮我们解决一个进程中同时执行对个不同的任务提高了资源的利用率。但是也给CPU增加了负担降低了进程中线程的执行概率容易引发线程安全问题出现死锁现象。所有线程不是开的越多越好转载于:https://www.cnblogs.com/WaJC2017/p/6129554.html