執行緒安全與StringBuffer

2021-10-23 15:51:23 字數 1527 閱讀 5659

public

class 執行緒不安全加字元

catch

(interruptedexception e)

system.out.

println

(allinfo.

length()

);}}

class

addstring

implements

runnable

@override

public

void

run()}

}

但是執行完畢後會發現上一段**的長度小於15000也就是說有一部分字元還沒有完成連線就已經被下乙個執行緒搶占

為了確保執行緒安全現在我們用stringbuffer來進行字串的連線

public

class

stringbuffersafethread

catch

(interruptedexception e)

system.out.

println

(allinfo.

length()

);}}

class

addstringthread

implements

runnable

@override

public

void

run()}

}

執行完畢後會發現長度等於15000也就是說明所有的字串都已經

完成了連線

對於字串的追加操作如果不涉及執行緒安全問題 那麼可以使用sringbuilder這個類進行操作 它能使效率提高許多

執行緒安全與執行緒不安全

執行緒安全是針對多執行緒來講的,如果所使用的公用變數在多執行緒下沒有被保護機制時,變數結果會和理論值不一致,這樣就叫作執行緒不安全,相反公用變數在保護機制下工作,就不會出現 隨機 變化,這時叫執行緒安全。執行緒安全 在多執行緒中使用時,不用自已做同步處理.執行緒不安全 在多執行緒中使用時,必須做執行...

執行緒安全與執行緒不安全

執行緒安全是針對多執行緒來講的,如果所使用的公用變數在多執行緒下沒有被保護機制時,變數結果會和理論值不一致,這樣就叫作執行緒不安全,相反公用變數在保護機制下工作,就不會出現 隨機 變化,這時叫執行緒安全。執行緒安全 在多執行緒中使用時,不用自已做同步處理.執行緒不安全 在多執行緒中使用時,必須做執行...

執行緒安全與執行緒不安全

執行緒不安全 就是不提供資料訪問保護,在多執行緒環境中對資料進行修改,會出現資料不一致的情況。執行緒安全 就是多執行緒環境中有對全域性變數的變動時,需要對執行的 塊採用鎖機制,當乙個執行緒訪問到某個資料時,其他執行緒需要等待當前執行緒執行完該 塊才可執行,不會出現資料不一致或者資料被汙染。如果一段 ...