• <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>

            S.l.e!ep.¢%

            像打了激速一樣,以四倍的速度運轉,開心的工作
            簡單、開放、平等的公司文化;尊重個性、自由與個人價值;
            posts - 1098, comments - 335, trackbacks - 0, articles - 1
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            代碼的壞味2

            Posted on 2008-12-17 20:35 S.l.e!ep.¢% 閱讀(1863) 評論(3)  編輯 收藏 引用 所屬分類: Design Pattern
            線程有兩條

            線程1. 界面線程(主線程)
            線程2. 子線程(數據操作)

            線程1 與 線程2 都加了一個鎖,用于同步一個共享資源

            經過調試,在某千均一發之際,線程2 由于操作慢了一點,這時線程1(界面)便會定死在那里,造成程序無反應

            后來,想到解決的方法,就是在線程1.訪問共享資源時,也開了一條子線程

            于是乎,
            在所有的 OnButton1_Click() 事件 都對應著一個 OnButton1_Click_Thread() 的線程函數……?

            Feedback

            # re: 代碼的壞味2  回復  更多評論   

            2008-12-17 21:58 by abettor
            線程1開的子線程可以用一個線程(池)來代替,OnButton1_Click()在實現的時候告訴線程池:“上帝,給我來一個線程吧,我要……”

            # re: 代碼的壞味2  回復  更多評論   

            2008-12-17 22:56 by 肥仔
            個人感覺搞錯了方向,可能的原因有2種
            1、死鎖,可能性不大,因為并不是每次都不行;
            2、工作線程執行了更新界面的操作,且通過調用引用控件的方法來更新的。因為控件方法調用實際上是SendMessage,應該用PostMessage就不會錯了。

            考慮如下情況:
            按下按鈕,界面線程執行OnButton,等待工作者線程釋放鎖;
            在同一時刻工作者線程更新界面,因為任何界面更新實際上都是界面線程完成(通過消息隊列),如果用的是SendMessage模式,工作者線程必須等待完成才可以走一下步,而等待完成的前提是OnButton完成。

            這樣就OnButton在等待鎖,工作者線程在等待OnButton完成才可以釋放鎖,無響應了,所以工作者線程更新,應該用PostMessage。

            # re: 代碼的壞味2  回復  更多評論   

            2008-12-17 23:10 by 肥仔
            剛剛特意再查了一下資料,找到了一片bbs,轉到了我自己的空間,你看看,是不是可能SendMessage死鎖
            http://www.shnenglu.com/woaidongmao/archive/2008/12/17/69696.html
            91精品国产91久久久久久蜜臀| 婷婷久久香蕉五月综合加勒比| 亚洲va中文字幕无码久久| 一本色道久久88综合日韩精品 | 亚洲精品乱码久久久久久不卡| 香港aa三级久久三级| 久久国产精品99精品国产987| 久久99精品久久久久久动态图| 久久久久无码精品国产| 国产精品久久久久天天影视| 久久久九九有精品国产| 999久久久国产精品| 久久久久99精品成人片牛牛影视 | 久久人妻少妇嫩草AV无码专区| 久久亚洲精品无码VA大香大香| 久久久久亚洲av成人网人人软件| 久久AV无码精品人妻糸列| 久久久久高潮毛片免费全部播放| 狠狠狠色丁香婷婷综合久久俺| 一级做a爱片久久毛片| 久久久精品国产Sm最大网站| 亚洲欧美伊人久久综合一区二区 | 午夜精品久久久久久99热| 久久久久人妻一区精品色| 一本伊大人香蕉久久网手机| 久久伊人五月天论坛| 日产精品久久久一区二区| 亚洲国产精品久久66| 2020国产成人久久精品| 久久精品国产一区| 亚洲精品97久久中文字幕无码| 成人国内精品久久久久一区| 国产精品美女久久久网AV| 亚洲色大成网站www久久九| 久久99热精品| 伊人久久大香线蕉AV色婷婷色| 久久精品国产一区| 久久妇女高潮几次MBA| 久久国产乱子伦精品免费午夜| 色欲综合久久躁天天躁蜜桃| 日韩AV毛片精品久久久|