DCL到底需不需要加volatile關鍵字

2021-10-24 21:11:30 字數 639 閱讀 5360

首先答案是肯定的!

public

class

singleton

public

static singleton getinstance()

}}return instance;

}}

為什麼加volatile?

volatile其實有兩個作用:

public

class

testbytes

位元組碼:

0 aload_0

1 invokespecial #1

>

4 aload_0

5 bipush 9

7 putfield #2

10return

4 aload_0(壓入運算元棧) 5 bipush 9(變數賦值)有可能跟 10 return發生重排序導致返回的是之賦了預設值0就被返回了所以就變成了半初始化的狀態,這樣下個執行緒來的時候在第乙個判斷singleton就不為空,拿走的就是半初始化的

關於delete字串 需不需要加

今天在寫c 練習題時產生乙個疑惑 new出字元陣列後 需不需要在delete時加 按道理 只要是陣列應該都要加的,但是答案沒有加,於是晚上回來上機執行 環境 devc include include using namespace std 有一些些成員是之前用到的 不過不影響測試 class cba...

討論 寫程式到底需不需要懂數學?

寫程式到底需不需要懂數學?數學對於程式設計師來說到底重不重要?類似這樣標題的討論,在網路上已經不知道被討論多少次了。研究所順利考上的嚮往已久的資工所,成為名符其實的本科系學生,本以為可以不用再玩數學了,但我發現我錯了,是不用再玩那些抽久的高等數學沒錯,但線性代數 機率統計 離散數學等 用了更多的數學...

大屏手機到底需不需要貼膜?

現在市面上不少手機都會以康寧玻璃為賣點,說這種玻璃防刮耐磨,無需貼膜 網上我們常常看到這樣的測試,一些人用鑰匙和刀在iphone螢幕上使勁的虐待,而結果絲毫無損,給人一種不會刮花的印象 許多朋友剛買iphone回來時以為iphone螢幕無敵,直接 裸奔 可過了沒多久,螢幕上卻出現了一道道細細的劃痕,...