黑马程序员技术交流社区

标题: 线程笔记 [打印本页]

作者: shaoboguanzi    时间: 2015-1-22 09:45
标题: 线程笔记
线程常见的问题?
1,多线程存在安全问?
原因:多个线程操作同一个共享数据时,一个线程对共享资源中多条语句执行时还没有执行完毕,另外一个线程参与进来。导致共享数据的错误。
2,解决办法:对操作共享数据的语句只能让一个线程执行过程中,其他线程不能执行。
    3,同步代码块:需要被同步的代码。synchronized(对象obj)
Object obj=new Object();synchronized(对象obj)
代码:
synchronized(obj)
{
if(tic>0)
{
System.out.println(Thread.currentThread().getName()+"...sale"+(tic--));
}
}
三、如何找到问题?
1,明确哪些代码是多线程运行代码。
public void run()
{}
2,明确共享数据(一般情况下成员都是共享数据)
private int tic=100;
3,明确多线程运行代码中哪些语句是操作共享数据的。(成员中被多个语句操作的成员)
四、注意:
try{ Thread.sleep(12);}catch(Exception e){};
不能throws抛出异常,因为来自接口中的方法。
作者: AthenaCykes    时间: 2015-2-12 16:25
学习学习.....~~赞一个
作者: d342784178    时间: 2015-2-12 16:55
赞一个!!
作者: BEIKOU    时间: 2015-2-13 07:18
来顶一下
作者: 眷恋从前的日子    时间: 2015-2-13 10:16
谢谢分享!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2