java并发编程
TeaIsCold
Java爱好者
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
创建多线程的三种方式
创建Java多线程的方式:1.实现Runnable接口+run(): 启动:使用静态代理模式 1.创建真实角色 2.创建代理角色Thread+引用 3.代理角色.start() 2.继承Thread+run() 启动:创建子类对象+对象.start() 在以上两种方式中推荐使用第一种方式,避免单一继承、便于共享资源3.通过实现Calla原创 2017-08-11 23:17:11 · 434 阅读 · 0 评论 -
线程状态与停止
一、线程状态1.创建线程--->就绪状态-->运行状态-->终止 ^ | | | | v -阻塞状态-1)创建线程对象进入新生状态 2)通过start进入就绪状态 3)run()进入运行状态 4)如果出现等待资源,或者sleep()、join()、yield()等则进入原创 2017-08-11 23:38:16 · 534 阅读 · 0 评论 -
Java wait(),yield(),sleep()的区别
1、sleep() 使当前线程(即调用该方法的线程)暂停执行一段时间,让其他线程有机会继续执行,但它并不释放对象锁。也就是说如果有synchronized同步快,其他线程仍然不能访问共享数据。注意该方法要捕捉异常。 例如有两个线程同时执行(没有synchronized)一个线程优先级为MAX_PRIORITY,另一个为MIN_PRIORITY,如果没有Sleep()方法,只有高优先级的线转载 2017-08-11 23:47:51 · 348 阅读 · 0 评论 -
源码分析继承Thread和实现Runnable来创建线程
创建线程的方式有三种,此处不再赘述,在另一篇文章中已经写过,此处从源码的角度来分析通过继承Thread和通过实现Runnable来创建线程的过程1. 调用thread.start()和thread.run()的区别Thread.java类中的start()方法通知“线程规划器”此线程已经准备就绪,等待调用线程对象的run()方法,就是让系统安排一个时间来调用Thread中的run()方法,也就是使得原创 2017-10-30 03:14:06 · 536 阅读 · 0 评论
分享