青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Error

C++博客 首頁 新隨筆 聯系 聚合 管理
  217 Posts :: 61 Stories :: 32 Comments :: 0 Trackbacks
VCZH.粉絲數組[0]<errorcpp@qq.com>  18:45:53
尼瑪,我現在要讀寫鎖
哪為接我一個
等boost能用了還給你
vczh四號粉絲(342775210)  18:46:25
不優化性能
優化啥啊,根本就沒性能問題
(逃

這摩托上班看著不錯
VCZH.粉絲數組[0]<errorcpp@qq.com>  18:47:08
我去
難道你們都不用讀寫所的,,,
hzcv.粉絲數組[-1](450635425)  18:47:04
想要一個
我以前有一個,但明顯沒這個號
vczh四號粉絲(342775210)  18:47:18
必須不用
讀寫鎖就是搓
hzcv.粉絲數組[-1](450635425)  18:47:31
普通鎖不行嗎?
vczh四號粉絲(342775210)  18:47:36
是啊
普通的鎖這么好
VCZH.粉絲數組[0]<errorcpp@qq.com>  18:47:50
尼瑪,讓我做框架
那群隊友都懶的不行啊
我讓他用鎖 他不樂意
一定要我在底層全部搞完了
vczh四號粉絲(342775210)  18:48:22
直接用手槍轟死他們
VCZH.粉絲數組[0]<errorcpp@qq.com>  18:49:39
就是個加載自動更新的東西
原來是一個bool類型沒有用鎖保護
現在我來做,我想還是保護下
vczh四號粉絲(342775210)  18:49:46
用atomic
VCZH.粉絲數組[0]<errorcpp@qq.com>  18:49:53
尼瑪問題就來了
問題是
他們要要求加載的時候 讀動作能自動掛起
又要偷懶
VCZH.粉絲數組[0]<errorcpp@qq.com>  18:52:07
我繼續去糞堆里拔東西

vczh四號粉絲(342775210)  18:52:10
atomic不行嘛?
hzcv.粉絲數組[-1](450635425)  18:52:42
讀寫留兩個函數
VCZH.粉絲數組[0]<errorcpp@qq.com>  18:52:58
這樣的

有個mutex 加載的時候lock上,bool ture
hzcv.粉絲數組[-1](450635425)  18:52:52
用mutex一夾,OK
VCZH.粉絲數組[0]<errorcpp@qq.com>  18:53:02
然后查詢的時候
不理會mutex
監視到ture才 unlock
vczh四號粉絲(342775210)  18:54:41
你那個是windows
不能用mutex夾
windows得用spin lock 夾
(逃
vczh.lsbandar(14735407)  18:55:04
。。。 
關鍵段不用 
用什么spinlock 
hzcv.粉絲數組[-1](450635425)  18:55:41
CriticalSection
hzcv.粉絲數組[-1](450635425)  19:00:28
Spinlock是什么?
hzcv.粉絲數組[-1](450635425)  19:02:19
#if defined(UNIX)
pthread_mutex_lock(&mutex_agent_list);
#elif defined(WINDOWS)
EnterCriticalSection(&cs_agent_list);
#endif

SpinLock和CriticalSection有什么不同???
vczh.Iskandar<vczh@163.com>  19:03:04
criticalsection是遞歸的
 
同一個線程可以enter兩次
 
都沒問題
 
leave兩次
 
VCZH.粉絲數組[5](110086478)  19:03:28
sscanf 的性能比較差?
vczh.lsbandar(14735407)  19:03:40
還可以 
hzcv.粉絲數組[-1](450635425)  19:03:53
哦?遞歸的?
IC
VCZH.粉絲數組[0]<errorcpp@qq.com>  19:08:43
個人感覺
可遞歸鎖
就是一個大坑
vczh.Iskandar<vczh@163.com>  19:11:32
有什么好坑
 
你要是當她不能遞歸
 
那就跟別的一樣了
 
坑只會更少
 
ooseven(147340642)  19:12:57
同一個線程下什么場景會導致連續申請鎖兩次?
VCZH.粉絲數組[5](110086478)  19:13:08
parse一個IP地址,有沒有比sscanf更快的
ooseven(147340642)  19:13:19
同一線程下的程序不都是按順序來的嗎?
vczh.Iskandar<vczh@163.com>  19:13:29
可以遞歸的鎖
 
具有可組合性
 
寫起代碼省心多了
 
VCZH.粉絲數組[0]<errorcpp@qq.com>  19:14:13
很多吭
ooseven(147340642)  19:14:16
我的意思是說,同一線程下的代碼,怎么會有并發申請鎖的機會?
vczh.Iskandar<vczh@163.com>  19:14:23
不會
 
但是你可以申請他兩次
 
VCZH.粉絲數組[0]<errorcpp@qq.com>  19:14:50
偷懶
Yaoxin(7936511)  19:14:43
 比如插入一個值,這個插入代碼中又要算長度。 
ooseven(147340642)  19:14:44
有啥好處呢?
vczh.Iskandar<vczh@163.com>  19:14:46
人懶不能怪工具
 
ooseven(147340642)  19:15:15
申請鎖兩次有啥好處?
vczh.Iskandar<vczh@163.com>  19:15:22
這個嘛
 
譬如說我一個類的所有函數
 
都申請了那個鎖
 
結果有一天
 
這種設計還是很常見的吧
 
我一個函數要調用另一個函數了
 
省點代碼
 
你用criticalsection
 
vczh.lsbandar(14735407)  19:15:49
可以遞歸 
ooseven(147340642)  19:15:50
了解
vczh.Iskandar<vczh@163.com>  19:15:52
就不會自己鎖死自己了
 
ooseven(147340642)  19:15:57
這樣也行
!
vczh.lsbandar(14735407)  19:16:06
避免你寫出傻逼的死鎖程序 
這幾乎是必須的 
ooseven(147340642)  19:16:23
啥啊,這是大bug吧
vczh.Iskandar<vczh@163.com>  19:16:26
不是
 
vczh.lsbandar(14735407)  19:16:32
特別是你只用scope的時候 
vczh.Iskandar<vczh@163.com>  19:16:32
criticalsection
 
就是為了讓你這么用的
 
還有,windows有些東西是有own的概念的
 
ooseven(147340642)  19:16:54
如果這不算bug,允許這樣的設計的話,那么鎖兩次也不夠啊
vczh.Iskandar<vczh@163.com>  19:16:54
譬如mutex
 
你一個線程得到了一個mutex
 
這個mutex就掛在你的線程下面了
 
這個時候你可以不斷地得到她
 
也是遞歸的
 
但是event沒有owner
 
所以對于一個autoresetevent
 
vczh.lsbandar(14735407)  19:17:26
遞歸鎖是重要特性 
vczh.Iskandar<vczh@163.com>  19:17:27
你連續wait兩次
 
就會傻逼
 
不然你覺得為什么windows會搞出這么多鎖
 
其實他們是不一樣的
 
ooseven(147340642)  19:18:08
一般同一個類里的函數我都會設計一個參數 void process(..., bool isLock = true);
vczh.Iskandar<vczh@163.com>  19:18:14
何苦呢
 
你就用criticalsection
 
無論如何enter一把
 
多省事
 
VCZH.粉絲數組[0]<errorcpp@qq.com>  19:18:53
ooseven(147340642)  19:18:08
一般同一個類里的函數我都會設計一個參數 void process(..., bool isLock = true);

這個思路不錯偷懶了
ooseven(147340642)  19:18:42
那兩次也不夠用啊
VCZH.粉絲數組[0]<errorcpp@qq.com>  19:19:01
但是出錯搞起來也更加苦逼了
vczh.Iskandar<vczh@163.com>  19:18:47
不是兩次
 
vczh.lsbandar(14735407)  19:18:50
傻逼 
vczh.Iskandar<vczh@163.com>  19:18:53
是不受限制的
 
你enter100次
 
也沒問題
 
vczh.lsbandar(14735407)  19:18:58
你想什么呢都 
ooseven(147340642)  19:19:02
哦,了解了
vczh.Iskandar<vczh@163.com>  19:19:03
誰他媽會有個2
 
只要你也leav 100ci就好了
 
多2
 
ooseven(147340642)  19:19:13
今天又有收獲,哈
vczh.Iskandar<vczh@163.com>  19:19:15
就算你要給個上限
 
那也得是9!
 
ooseven(147340642)  19:19:57
windows下所有的鎖都是同一線程下不鎖嗎?
vczh.lsbandar(14735407)  19:19:58
一定要有遞歸鎖 
用起來才舒服 
vczh.Iskandar<vczh@163.com>  19:20:34
不是
 
event就不是“鎖”
 
遞歸一下就所思自己了
 
semaphore也不是遞歸的
 
所以semaphore(max=1)并不等于mutex
 
而criticalsection和mutex的區別是
 
vczh.Iskandar<vczh@163.com>  19:21:39
cs帶spin而且不能跨進程
 
vczh.lsbandar(14735407)  19:21:52
凡是信號模型的 
都是不能重入的 
vczh.Iskandar<vczh@163.com>  19:22:12
而semaphore(max=1)勉強跟auto reset event一樣
 
vczh.lsbandar(14735407)  19:22:19
比如vc的例子 
vczh.Iskandar<vczh@163.com>  19:22:21
但是auto reset只是普通event的一個屬性
 
所以這些東西都是不能互相替代的
 
vczh.lsbandar(14735407)  19:22:38
但是所有的資源鎖都能重入 
ooseven(147340642)  19:22:51
我基本只用Cristalsection
vczh.lsbandar(14735407)  19:22:52
還有就是 
cs只能匿名 
vczh.Iskandar<vczh@163.com>  19:23:02
用cs你就不需要islock參數了,直接干掉他
 
隨便你鎖
 
從未來‏?過‪(815330718)  19:23:12
加鎖兩次,就要解鎖兩次
vczh.Iskandar<vczh@163.com>  19:23:41
解鎖兩次就兩次
 
不就是把一個變量從1設置為0嗎
 
會有多慢
 
(逃
 
ooseven(147340642)  19:24:36
我只管加鎖,不管解鎖,解鎖都交給析構函數了
從未來‏?過‪(815330718)  19:24:41
我是說鎖 重入.
vczh.Iskandar<vczh@163.com>  19:24:52
臥槽
 
加鎖跟解鎖
 
當然是構造函數一個
 
析構函數一個了
 
你居然
 
ooseven(147340642)  19:25:12
我是說不手動解鎖
從未來‏?過‪(815330718)  19:25:44
那你手動加鎖...加了兩次,只能解鎖一次了..
ooseven(147340642)  19:26:00
不會啊,構造兩次,當然就析構兩次
AutoLock Lock(Cristalsection);
以后就不管了
vczh.Iskandar<vczh@163.com>  19:26:46
所以你那個islock參數
 
就這么干掉吧
 
ooseven(147340642)  19:27:04
嗯,以前還不知道有這特性
VCZH.粉絲數組[0]<errorcpp@qq.com>  19:29:46
condition 和 mutex
分別適應的場合

今天他又學了不少東西
膜拜
vczh.Iskandar<vczh@163.com>  19:29:53
condition variable是一個牛逼的東西
 
一定要掌握
 
VCZH.粉絲數組[0]<errorcpp@qq.com>  19:30:34
我們這邊隊友 wait_condition之前
vczh.Iskandar<vczh@163.com>  19:30:15
回家
 
VCZH.粉絲數組[0]<errorcpp@qq.com>  19:30:41
不鎖mutex
從未來‏?過‪(815330718)  19:30:21
condition variable 不會
 

VCZH.粉絲數組[0]<errorcpp@qq.com>  19:30:48
求解釋
vczh.Iskandar<vczh@163.com>  19:30:28
不是啊
 
VCZH.粉絲數組[0]<errorcpp@qq.com>  19:30:54
這是不要吐槽
vczh.Iskandar<vczh@163.com>  19:30:37
condition是和cs
 
一起用的啊
 
VCZH.粉絲數組[0]<errorcpp@qq.com>  19:31:15
不是和mutex一起的么
api參數都是這樣
vczh.lsbandar(14735407)  19:31:10
和event一起 
vczh.Iskandar<vczh@163.com>  19:31:11
api名字我忘了但是大概就是
 
VCZH.粉絲數組[0]<errorcpp@qq.com>  19:31:33
condition_wait的時候要給一個mutex進去
vczh.Iskandar<vczh@163.com>  19:31:25
WaitForConditionVariableCS/SRW(condition, cs/srw)
 
沒有mutex
 
回家
 
VCZH.粉絲數組[0]<errorcpp@qq.com>  19:32:14



condition是和cs一起用很爽,應為CS可以不需要在mutex保護下
posted on 2013-01-31 19:33 Enic 閱讀(389) 評論(0)  編輯 收藏 引用 所屬分類: VC路上的坑
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            在线观看日产精品| 欧美一区二区三区日韩| 亚洲一区欧美| 亚洲一二三四久久| 欧美亚洲一级片| 久久高清国产| 欧美电影资源| 宅男精品视频| 久久久久国产免费免费| 免费不卡亚洲欧美| 国产精品www色诱视频| 国产精品久久久久免费a∨| 国产精品毛片在线| 在线免费观看日本欧美| 亚洲一区二区在线免费观看视频| 欧美亚洲综合网| 欧美在线视频观看| 欧美在线免费看| 久久嫩草精品久久久精品一| 久久精品综合网| 免费看精品久久片| 亚洲成在人线av| 亚洲国产一区二区三区在线播| 日韩亚洲欧美成人一区| 久久字幕精品一区| 欧美日韩免费在线观看| 国产日韩高清一区二区三区在线| 狠狠色丁香婷婷综合影院| 日韩天堂av| 男人插女人欧美| 99精品视频一区| 久久电影一区| 一区二区三区高清在线观看| 欧美母乳在线| 国内揄拍国内精品久久| 夜夜夜久久久| 亚洲一区在线播放| 国产伦精品一区二区三区| 先锋亚洲精品| 亚洲私人影院在线观看| 国产精品视频网| 欧美日韩国产综合久久| 欧美1区免费| 一区二区亚洲| 免费欧美日韩| 欧美视频中文在线看 | 国产精品99久久久久久久久| 欧美理论大片| 久久成人18免费网站| 久久婷婷久久| 欧美国产丝袜视频| 一区二区日韩欧美| 久久亚洲精品视频| 亚洲精品视频免费观看| 亚洲精品日韩激情在线电影| 国产精品激情电影| 亚洲大胆女人| 欧美日韩视频第一区| 美女91精品| 欧美午夜影院| 美日韩精品视频| 日韩一区二区精品| 欧美激情在线观看| 欧美一进一出视频| 欧美一区二区免费视频| 99精品视频一区| 久久久蜜桃精品| 欧美一区二区三区啪啪| 欧美日韩一区二区免费在线观看| 欧美在线国产精品| 欧美精品久久一区二区| 美国成人直播| 在线精品国产欧美| 日韩午夜免费| 亚洲三级国产| 欧美xx视频| 亚洲精品中文字幕有码专区| 最新国产成人av网站网址麻豆 | 老鸭窝91久久精品色噜噜导演| 欧美体内谢she精2性欧美| 一区二区高清视频在线观看| 小黄鸭精品aⅴ导航网站入口| 欧美日韩日本国产亚洲在线| 亚洲最快最全在线视频| 欧美一区二区三区精品电影| 国产一区二区成人| 欧美高清视频| 亚洲免费一级电影| 欧美成人一品| 亚洲直播在线一区| 亚洲国产精品一区二区www在线| 欧美日韩在线视频观看| 亚洲精品久久久蜜桃| 亚洲第一中文字幕在线观看| 欧美日韩免费观看一区=区三区| 一区二区三区产品免费精品久久75| 亚洲欧美另类中文字幕| 国产精品欧美一区二区三区奶水| 亚洲午夜视频| 亚洲天堂网站在线观看视频| 欧美激情久久久| 日韩午夜一区| 欧美国产丝袜视频| 尤物yw午夜国产精品视频| 久久久久se| 一区二区高清在线| 国产精品毛片在线| 美女网站久久| 国产精品激情电影| 一区二区视频免费在线观看| 亚洲国产欧美不卡在线观看| 欧美女人交a| 久久久福利视频| 欧美另类综合| 久热精品视频在线观看| 欧美日韩福利视频| 久久午夜激情| 国产精品一区免费在线观看| 亚洲黑丝在线| 一区二区在线视频播放| 一区二区三区不卡视频在线观看| 在线观看一区二区视频| 亚洲欧美激情视频| av不卡免费看| 蜜臀av在线播放一区二区三区 | 久久99在线观看| 欧美激情中文字幕一区二区| 免费成人黄色av| 国产一区二区精品久久99| 亚洲视频久久| 亚洲天堂av图片| 欧美日韩亚洲系列| 亚洲三级免费| 亚洲久久视频| 欧美大片在线观看一区| 欧美福利网址| 亚洲国产婷婷香蕉久久久久久99| 久久精品99| 久久久久久久国产| 国产一区免费视频| 久久久精品一区| 免费成人高清在线视频| 在线观看日产精品| 另类春色校园亚洲| 快she精品国产999| 亚洲国产精品免费| 欧美激情国产高清| 99国产精品视频免费观看| 日韩一级黄色大片| 欧美日韩精品高清| 亚洲天堂第二页| 久久国产精品网站| 在线成人国产| 亚洲欧美在线看| 国产精品区二区三区日本| 亚洲欧美999| 久久免费99精品久久久久久| 一区二区三区自拍| 欧美精品麻豆| 亚洲视频网站在线观看| 欧美三日本三级少妇三99| 一本色道久久综合亚洲精品高清| 亚洲欧美bt| 国产亚洲一区精品| 蜜月aⅴ免费一区二区三区 | 今天的高清视频免费播放成人 | 欧美日韩一区二区在线观看视频| 日韩视频不卡| 久久精品国语| 日韩亚洲欧美在线观看| 国产精品二区二区三区| 欧美中文字幕不卡| 亚洲精品激情| 久久精品视频播放| 日韩一区二区精品在线观看| 国产情人节一区| 鲁大师成人一区二区三区| 一本久道久久综合中文字幕| 久久久精品午夜少妇| 亚洲精品一区中文| 国产视频久久网| 欧美日韩视频一区二区| 久久久久久久久蜜桃| 中日韩高清电影网| 亚洲成人中文| 久久久久久久久久久成人| 夜夜嗨av一区二区三区网站四季av| 国产自产女人91一区在线观看| 欧美日韩午夜在线| 免费日韩av电影| 欧美一区国产在线| 一区二区电影免费在线观看| 玖玖玖国产精品| 欧美综合77777色婷婷| 日韩一区二区福利| 亚洲激情视频在线观看| 韩日午夜在线资源一区二区| 国产精品久久久久av| 欧美另类视频在线| 久久久久久高潮国产精品视|