多线程
coding的大博哥
做一个牛逼的人,不问世事……
展开
-
多线程的通信问题
前提: 1:当多个线程并发执行时, 在默认情况下CPU是随机切换线程的,每个线程执行的次序都是随机的。 2:如果我们需要多个线程共同完成一个任务,并且希望他们有规律的执行(有可能是多线程间交替执行,有可能是当某个线程达到某个条件后才让其他线程执行),就需要线程之间协调通信。 3:我认为处理线程安全的同步锁机制,也算是线程间的通信。 解决方案:等待唤醒机制 1:一般在synchroniz...原创 2019-11-13 16:21:18 · 250 阅读 · 0 评论 -
多线程的安全问题
前提: 1:如果线程之间不共享资源,则不存在线程安全的问题。 2:如果线程之间共享资源,则就会存在线程安全的问题;即线程之间对共享资源访问的同步问题。 解决方案:同步机制 1:通过synchronized 定义同步代码块 public void sale(){ synchronized (this) { //使用同步代码块使线程间同步 if (tic...原创 2019-11-13 12:38:57 · 193 阅读 · 0 评论 -
Java实现多线程的两种方式
1:继承Thread类,子类就是线程类,子类中内容就是线程任务;直接创建子类对象,并调用start()方法即可启动线程。 public class MyThread extends Thread{ @Override public void run(){ System.out.println("当前线程的名字="+Thread.currentThread...原创 2019-11-13 10:27:56 · 183 阅读 · 0 评论