摘要:
Lock 实现提供了比使用 synchronized 方法和语句可获得的更广泛的锁定操作。 Lock接口中常用的方法为 lock() 和 unlock() 想要使用Lock接口中方法要先创建Lock锁对象 run方法中用 ck.lock() 来上锁,用 ck.unlock() 来把锁归还。 阅读全文
摘要:
Lock 实现提供了比使用 synchronized 方法和语句可获得的更广泛的锁定操作。 Lock接口中常用的方法为 lock() 和 unlock() 想要使用Lock接口中方法要先创建Lock锁对象 run方法中用 ck.lock() 来上锁,用 ck.unlock() 来把锁归还。 阅读全文
摘要:
同步方法:在方法声明上加上synchronized 同步方法中的锁对象是 this 使用同步方法,对电影院卖票案例中Ticket类进行如下代码修改: 但是在静态同步方法中,也就是: 锁不是this而是 类名.class 。静态方法中没有this。 阅读全文
摘要:
如果有多个线程在同时运行,而这些线程可能会同时运行这段代码。程序每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。 如下例中,如果有三个线程T0,T1,T2。若ticket只剩最后1张票时,当T0抢到CPU资源时,T0运行if语句判断后休眠;T1又在此时抢 阅读全文
摘要:
这种方法的好处是节省了代码,但是格式不太被人接受 阅读全文
摘要:
java中有两种创建多线程的方法,一种为继承Thread类一种为实现Runnable接口 第一种方法 第二种方法 用第二种方法实现Runnable接口避免了单继承的局限性,所以较为常用。实现Runnable接口的方式,更加的符合面向对象,线程分为两部分,一部分线程对象,一部分线程任务。继承Threa 阅读全文
摘要:
sleep若在main方法中可直接使用 若在继承了Thread的类中使用会报错,需要加上try语句 阅读全文
摘要:
其中ReadKey()括号中为true则用户的按键不显示在控制台窗体上 阅读全文
|