线程一直都是属于Java中的高冷范,让人趋之若鹜觉得征服了他就征服了Java,但确实是高冷范到底,要征服他一切来自积累;作为初学者,也只能望其项背而难以企及,大概了解下这位男神的冰山一角;
线程是什么?
线程说简单一点,就是同时做事情;之前我们说Java是编程者作为领导让对象做事情;但是不管如何,程序员下命令是按顺序的,而且一次只能下一个命令;因为只有一个程序员,程序只有一条执行路径;
而多线程,相当于同时出现多个程序员,同时有多个程序的执行路径;如下图,只有真正的多线程,洗菜,切肉,炒菜,出锅有不同的执行路径,可以同时执行;
我们来画图再看一下单线程做饭和多线程做饭的区别;
单线程只有一条执行路径,执行有先后顺序;
多线程有多条执行路径,真正的同时进行;
如何使用线程?
把线程当成执行任务的工人,给工人分配任务,然后让他执行任务;多个线程就是多个工人,而工人作为对象Java已经帮你创建好了类,你只需要new出对象来使用就OK了;
工人--Thread类,我们可以创建多个Thread类的对象作为同时工作的工人;,
任务--Runnable接口,交给工人执行的任务接口
线程是什么?
线程说简单一点,就是同时做事情;之前我们说Java是编程者作为领导让对象做事情;但是不管如何,程序员下命令是按顺序的,而且一次只能下一个命令;因为只有一个程序员,程序只有一条执行路径;
而多线程,相当于同时出现多个程序员,同时有多个程序的执行路径;如下图,只有真正的多线程,洗菜,切肉,炒菜,出锅有不同的执行路径,可以同时执行;
我们来画图再看一下单线程做饭和多线程做饭的区别;
单线程只有一条执行路径,执行有先后顺序;
多线程有多条执行路径,真正的同时进行;
如何使用线程?
把线程当成执行任务的工人,给工人分配任务,然后让他执行任务;多个线程就是多个工人,而工人作为对象Java已经帮你创建好了类,你只需要new出对象来使用就OK了;
工人--Thread类,我们可以创建多个Thread类的对象作为同时工作的工人;,
任务--Runnable接口,交给工人执行的任务接口
我们来看一下具体代码;创建多个Thread对象,让他们start就可以开始并行工作了;要摸到线程这个高冷范的衣角就是这么简单;