java多线程那些事
多线程那些事
0.多线程实现两种方式:
<1>.new Thread(
public void run(){
//anything u want do;
}
).start();
<2>.new Thread(
new Runnable(){
public void run(){
//look up;
}
}
).start();
推荐第二种,面向对象,你懂的
1.synchronzied加谁身上锁住谁,你懂的,而且还是个悲观锁,但是确实能解决多线程同步问题,就是效率问题···
2.ThreadLocal类,为每个子线程提供一个副本,是个好东东
3.多线程共享数据,封装到一个大对象比较好吧,然后每个任务都引用到大对象,记得读写时加锁(需要的时候)···
4.原子性操作类--CAS原理,多线程共享数据时,建议使用
5.线程并发库,把一些任务(实现了Runnable接口的类)扔到线程池里去执行,当然这个优越性前提是大牛已经把最困难的解决了···
6.Callable 和Future,把任务完成后的状态显示出来
7.Lock 锁,其实就是操作系统中的信号量,好没意思,但是人家是面向对象出身
补充:软件开发 , Java ,