久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
有關(guān)線程安全
[打印本頁]
作者:
51黑tt
時間:
2016-3-5 23:48
標題:
有關(guān)線程安全
有關(guān)線程安全
1、可重入的概念
若一個程序或子程序可以安全的被并行執(zhí)行,則稱其為可重入(reentrant或re-entrant)的;即,當該子程序正在運行時,可以再次進入并執(zhí)行它。若一個函數(shù)是可重入的,則該函數(shù):
不能含有靜態(tài)(全局)非常量數(shù)據(jù)。
不能返回靜態(tài)(全局)非常量數(shù)據(jù)的地址。
只能處理由調(diào)用者提供的數(shù)據(jù)。
不能依賴于單實例模式資源的鎖。
不能調(diào)用不可重入的函數(shù)。
與線程安全的關(guān)系
可重入與線程安全兩個概念都關(guān)系到函數(shù)處理資源的方式。但是,他們有一定的區(qū)別。可重入概念會影響函數(shù)的外部接口,而線程安全只關(guān)心函數(shù)的實現(xiàn)。
大多數(shù)情況下,要將不可重入函數(shù)改為可重入的,需要修改函數(shù)接口,使得所有的數(shù)據(jù)都通過函數(shù)的調(diào)用者提供。
要將非線程安全的函數(shù)改為線程安全的,則只需要修改函數(shù)的實現(xiàn)部分。一般通過加入同步機制以保護共享的資源,使之不會被幾個進程同時訪問。
因此,相對線程安全來說,可重入性是更基本的特性,它可以保證線程安全:即,所有的可重入函數(shù)都是線程安全的,但并非所有的線程安全函數(shù)都是可重入的。
2、
調(diào)用一個函數(shù)(假設(shè)該函數(shù)是正確的)操作某對象常常會使該對象暫時陷入不可用的狀態(tài)(通常稱為不穩(wěn)定狀態(tài)),等到操作完全結(jié)束,該對象才會重新回到完全可用的狀態(tài)。如果其他線程企圖訪問一個處于不可用狀態(tài)的對象,該對象將不能正確響應(yīng)從而產(chǎn)生無法預(yù)料的結(jié)果,如何避免這種情況發(fā)生是線程安全性的核心問題。
一般準則
如果一個函數(shù)在其文檔中沒有特別注明具備線程安全性,則應(yīng)該認為它不具備。許多庫大量使用了內(nèi)部的靜態(tài)數(shù)據(jù),除非它是為多線程應(yīng)用所設(shè)計,否則要牢記其內(nèi)部數(shù)據(jù)可能沒有利用互斥量進行適當?shù)谋Wo。類似,如果類的成員函數(shù)在其文檔中沒有特別注明對于多線程應(yīng)用是安全的話,則認為它不安全。兩個線程去操作相同的對象會引起問題,這是顯而易見的,然而,即使兩個線程去操作不同的物體依然會引起問題。出于多種原因,許多類使用了內(nèi)部靜態(tài)數(shù)據(jù)或者在多個看上去明顯不同的對象間共享實現(xiàn)細則,
以下給出幾個一般準則:
操作系統(tǒng)提供的API具備線程安全性
POSIX線程標準要求C標準庫中的大多數(shù)函數(shù)具備線程安全性,少數(shù)例外會在C標準中注明。
對于Windows提供的C標準庫,如果所使用的版本沒有問題,而且進行了正確的初始化,他們都是安全的。
C++標準庫的線程安全性不是很明確,它在很大程度上依賴于使用的編譯器。標準模板庫線程安全性的SGI準則作為實際中的標準取得很大進展,但并不是統(tǒng)一的標準。
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
就爱啪啪网
|
一级片在线视频
|
日韩欧美精品在线
|
国产欧美综合一区二区三区
|
四虎看片
|
亚洲精品国产精品国自产在线
|
青青青在线视频
|
在线免费观看av片
|
成人欧美一区二区三区黑人孕妇
|
激情五月婷婷
|
成人av免费看
|
91精品免费视频
|
欧美999
|
欧美激情视频一区二区三区
|
成年人免费看视频
|
国产三级精品视频
|
国产一级生活片
|
a亚洲天堂
|
午夜国产一区
|
婷婷激情综合网
|
国产欧美综合一区二区三区
|
国产精品成人免费视频
|
国产在线一区二区
|
国产精品久久久久久久午夜
|
国产亚洲一区二区三区
|
国产精品一区二区在线免费观看
|
亚洲天天
|
国产精品久久久久久久久
|
日韩一区二区在线观看视频
|
欧美精品一二三
|
色婷婷网
|
亚洲午夜精品
|
欧美日韩精品在线
|
国产又粗又猛视频免费
|
免费在线成人网
|
av免费看网站
|
午夜亚洲精品
|
亚洲另类视频
|
黄色一级片免费看
|
日本黄a三级三级三级
|
蜜臀久久99精品久久久久久宅男
|