ThreadLock2

来源:互联网 发布:怎么上badoo网络 编辑:程序博客网 时间:2024/06/05 15:22

如果有好多方法,一个是改,一个是读,那么一般情况要把改的方法加锁,因为不能存在多个线程同时去改,但可以多个线程同时去读,so读的方法不加锁。。。

委屈妹的。。。。鸡肋中的鸡肋。。。。感觉三天之后绝对忘完了大哭。。。实际应用的太少了。。。略做了解了解

 

package heng.java.Thread1;/** * 当锁定线程中的某个方法时,则该方法的对象将被锁定。被锁定的方法中的其他代码将不被执行,除非 * 该方法中的线程执行完毕。但在该线程执行过程中,其他没有被锁定的方法可以在主线程main()被调用执行 * @author haley * */public class MyThreadLock {public static void main(String[] args) {TT  tt = new TT();Thread t = new Thread(tt);t.start();try {Thread.sleep(1000);tt.m2();} catch (InterruptedException e) {e.printStackTrace();}}}class TT implements Runnable {int b = 100;public void run(){try{m1();}catch (Exception e){e.printStackTrace();}}public synchronized void m1(){b = 1000;try {Thread.sleep(5000);} catch (InterruptedException e) {e.printStackTrace();}System.out.println("b = "+b);//该句将不被执行,}public void m2(){System.out.println(b);}}


 

 

原创粉丝点击