volatiled volatile是什么意思

导读 今天来聊聊关于volatiled,volatile是什么意思的文章,现在就为大家来简单介绍下volatiled,volatile是什么意思,希望对各位小伙伴们有所帮

今天来聊聊关于volatiled,volatile是什么意思的文章,现在就为大家来简单介绍下volatiled,volatile是什么意思,希望对各位小伙伴们有所帮助。

1、一般的,如果多个线程协作存、取某个变量时,一般需要用到synchronized关键字进行同步操作。

2、如:public class MyTestThread extends MyTest implements Runnable { private boolean _done = false; public synchronized boolean getDone() { return _done; } public synchronized void setDone(boolean b) { _done = b; } public void run( ) { boolean done; done = getDone(); while (!done) { repaint( ); try { Thread.sleep(100); } catch (InterruptedException ie) { return; } } }}或者:public class MyTestThread extends MyTest implements Runnable { private boolean _done = false; public void setDone(boolean b) { synchronized(this) { _done = b; } } public void run( ) { boolean done; synchronized(this) { done = _done; } while (!done) { repaint( ); try { Thread.sleep(100); } catch (InterruptedException ie) { return; } } }}但是,通过volatile关键字,我们可以大大简化:public class MyTestThread extends MyTest implements Runnable { private volatile boolean done = false; public void run( ) { while (!done) { repaint( ); try { Thread.sleep(100); } catch (InterruptedException ie) { return; } } } public void setDone(boolean b) { done = b; }}。

相信通过volatile是什么意思这篇文章能帮到你,在和好朋友分享的时候,也欢迎感兴趣小伙伴们一起来探讨。

标签:

免责声明:本文由用户上传,如有侵权请联系删除!