摘要:
从轻松的乐观锁和悲观锁聊起 悲观锁 认为自己在使用数据的时候一定有别的线程来修改数据,因此在获取数据的时候会先加锁,确保数据不会被别的线程修改。 synchronized关键字和Lock的实现类都是悲观锁 使用场景: 适合写操作多的场景,先加锁可以保证写操作时数据正确。 显式的锁定之后再操作同步资源 阅读全文
摘要:
如何停止、中断一个运行中的线程? 首先一个线程不应该由其他线程来强制中断或停止,而是应该由线程自己自行停止。所以,Thread.stop, Thread.suspend, Thread.resume 都已经被废弃了。 其次,在Java中没有办法立即停止一条线程,然而停止线程却显得尤为重要,如取消一个 阅读全文