上一页 1 ··· 30 31 32 33 34 35 36 37 38 ··· 48 下一页
摘要: volatile volatile关键字的主要作用是使变量在多个线程间可见 使用方法: private volatile int number=0; 图示: 两个线程t1和t2共享一份数据,int a=0,但是两个线程间是不可见的,t1修改a=10,但对于t2来说a还是从0变到20,两个线程是独立的 阅读全文
posted @ 2019-12-04 11:47 Curedfisher 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 1.synchronized可以使用任意的Object进行加锁,用法比较灵活 另外特别注意一个问题,就是不要使用String常量加锁,会出现死循环 输出结果: 永远都是t1开始,t1结束,没有t2什么事,这是什么原因呢? String在常量池中只有一个引用,所以尽量不要用字符串常量去加锁 可以采用如 阅读全文
posted @ 2019-12-04 10:23 Curedfisher 阅读(208) 评论(0) 推荐(0) 编辑
摘要: synchronized锁重入: 关键字synchronized拥有锁重入的功能,也就是使用synchronized时,当一个线程得到了一个对象的锁后,再次请求此对象时是可以再次得到对象的锁. 输出结果: method1方法加了synchronized了,在method1()方法中调用加synchr 阅读全文
posted @ 2019-12-04 09:31 Curedfisher 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 脏读: 对于对象的同步和异步的方法,我们在设计自己的程序的时候,一定要考虑问题的整体,不然就会出现数据不一致的错误,很经典的错误就是脏读. 首先是主线程,走着走着出现一个t1线程,t1执行run方法,调用setValue();主线程1秒的时候调了getValue()方法; 从上面看,在t1线程2秒内 阅读全文
posted @ 2019-12-04 08:40 Curedfisher 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 1.同步:synchronized 同步的概念就是共享;如果不是共享的资源,就没有必要进行同步 2.异步:asynchronized 异步的概念就是独立,相互之间不受到任何限制.就好像我们学习http的时候,在页面发起Ajax请求,我们还可以继续浏览或操作页面的内容,二者之间没有任何关系. 3.同步 阅读全文
posted @ 2019-12-03 17:47 Curedfisher 阅读(1106) 评论(0) 推荐(0) 编辑
摘要: 多个线程多个锁:多个线程,每个线程都可以拿到自己指定的锁,分别获得锁之后,执行synchronized方法体的内容 (1).不加static关键字执行结果 运行结果: (2).加上static关键字执行的结果 加static的意思是:在静态方法上 加上synchronized修饰的话,(以后获得的锁 阅读全文
posted @ 2019-12-03 17:25 Curedfisher 阅读(318) 评论(0) 推荐(0) 编辑
摘要: 1.线程安全概念: 当多个线程访问某一个类(对象或方法)时,这个类始终都能表现出正确的行为,那么这个类(对象或方法)就是线程安全的. synchronized:可以在任意对象及方法上加锁,而加锁的这段代码称为"互斥区"或"临界区" 2.实例:MyTread 上面图是没加synorized的情况. 当 阅读全文
posted @ 2019-12-03 16:55 Curedfisher 阅读(1268) 评论(0) 推荐(0) 编辑
摘要: 1.为什么要学习并发编程? 2.该如何学习并发编程? 阅读全文
posted @ 2019-12-03 16:19 Curedfisher 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 1.同步代码块 在代码块上加上"synchronized"关键字,则此代码块就称为同步代码块 2.同步代码块格式: synchronized(同步对象){ 需要同步的代码块; } 3.同步方法 除了代码块可以同步,方法也可以同步的 4.方法同步格式: synchronized void 方法名称() 阅读全文
posted @ 2019-12-03 11:07 Curedfisher 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 1.优先级顺序设置(有可能影响线程的执行顺序,不会一定影响) 1-MIN_PRIOPITY 10-MAX_PRIORITY 会提高当前线程的执行速度,有很大概率抢到cpu运行资源,但不一定 5-NORM_PRIORITY 如果什么都不设置默认值是5 2.ThreadDemo04.java packa 阅读全文
posted @ 2019-12-03 10:34 Curedfisher 阅读(322) 评论(0) 推荐(0) 编辑
上一页 1 ··· 30 31 32 33 34 35 36 37 38 ··· 48 下一页