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

毫秒級計時器

今天繼續編寫,基于框架的效果編輯器,修正了部分BUG后。。就想把。渲染窗口掛到MFC的窗口上。。。做為整個編輯器的一個子窗口打開。。這次。。。也比較方便。。也便于以后修改。以前掛接渲染窗口時。是使用settime來進行定時刷新渲染窗口,原來就感覺到刷新比較慢。但是因為查看MSDN。。。上講。。SetTime是毫秒級。。。最低精確到1毫秒。。。1秒=1000毫秒。我為了保證窗口UI的正常使用。一般設置為20毫秒。。為什么不用線程咧。因為渲染窗口一般會與其它信息存在交互。。單純渲染線程。。在處理互斥時。。。效率會慢到無法用言語來表達。。。1000/20=50。。每秒50的fps。。足可以應付簡單的渲染需求了。但是在今天的測試中。。動態調整動畫的FPS時。。。確發現。當FPS超過每秒20的范圍后。。動畫就不再有任何變化了,郁悶。。。然后。。就輕易的推翻了自己寫的一切。。。使用線程。。渲染。。。。因為渲染紋理是從一個模板LIST中。。。獲得。。。立刻就開始徘徊在。。加鎖。。。。。巨慢。。。不加鎖。。。異常的圍城中。。。。在多方思索無果后。。。。忽然覺得SetTime不應該會如此慢的。。。。然后。。。放棄線程。。。去實際測試了一下。。。發現了問題:

SetTime雖然MSDN上說可以最低設置到一毫秒,但實際上測試只能精確到53毫秒左右,然后google上查詢。。。有了答案。windows 以經限定了Settimer()的精度是55ms。。。就是所謂的1000/55==18.2 ..因為98系統是根據時間中斷反饋,而時間中段每秒最多18.2次,雖然2000的系統據說沒有此限制。。但在我XP的系統下測試。。。精度依舊。應該是為了保證系統兼容。。所以將SetTime精度設定在最高的范圍。。如果這樣換算。。。也就和我的問題基本吻合。。。。SetTime(1)的情況下。。實現是55毫秒觸發一次,也就是每秒18.2幀。。。。18的FPS。。。啥都玩不轉了。而且WM-TIME消息 在系統的優先級為極低。很容易被拋棄。。渲染窗口最少要保證在20毫秒觸發一次。。也就是FPS50的情況下。。才可以保證動畫等效果的連續性。。怎么辦。。。怎么辦。。。。繼續google。。。毫秒級記時器。。。。。終于被我找到了。。。。。好幾種解決的方法,對了。。。sleep的精度是30MS。。。以后要注意。。一下:

一.GetTickCount()函數,該函數的返回值是  DWORD型,表示以ms為單位的計算機啟動后經歷的時間間隔。精度比WM_TIMER消息映射高,在較 短的定時中其計時誤差為15ms,在較長的定時中其計時誤差較低,如果定時時間太長,就好象死機一樣,CPU占用率非常高,只能用于要求不高的延時程序中.
下列代碼可以實現50ms的精確定時:
       DWORD dwStart = GetTickCount();
DWORD dwEnd   = dwStart;
do
{
              //為了在延遲時間不阻塞。可在此將消息傳出,但是會降低精度
MSG   msg;
GetMessage(&msg,NULL,0,0);
TranslateMessage(&msg);
DispatchMessage(&msg);
              dwEnd = GetTickCount()-dwStart;
}while(dwEnd <50);
二,這就是我現在使用的方法,也決定以后都使用。。哈哈
 使用多媒體定時器timeSetEvent()函數,該函數定時精度為ms級(精度基本準確,由于掛接窗口一般是在工具中實現,內部人員使用,所以不需要控制機器配置)。
MMRESULT timeSetEvent( UINT uDelay,
UINT uResolution,
LPTIMECALLBACK lpTimeProc,
WORD dwUser,
UINT fuEvent )
該函數設置一個定時回調事件,此事件可以是一個一次性事件或周期性事件。事件一旦被激活,便調用指定的回調函數, 成功后返回事件的標識符代碼,否則返回NULL
參數說明:
uDelay:以毫秒指定事件的周期。
Uresolution:以毫秒指定延時的精度,數值越小定時器事件分辨率越高。缺省值為1ms。
LpTimeProc:指向一個回調函數。
DwUser:存放用戶提供的回調數據。
FuEvent:指定定時器事件類型:
TIME_ONESHOT:uDelay毫秒后只產生一次事件
TIME_PERIODIC :每隔uDelay毫秒周期性地產生事件。  
需要注意的是,任務處理的時間不能大于周期間隔時間。另外,在定時器使用完畢后, 應及時調用timeKillEvent()將之釋放。 
雖然還有更加精確的計時方法,不過對于我的需求這個以經夠用了
我的實現代碼
UINT   uTimerID;         //定義定時器句柄   
void   CALLBACK   TimerCallProc(UINT   TimerID,   UINT   msg,DWORD   dwUser,   DWORD   dwa,DWORD   dwb)   
{
 // TODO: 在此添加消息處理程序代碼和/或調用默認值

 Sleep(1);
}
//當前設置為1ms...
uTimerID=timeSetEvent(1,1,&TimerCallProc,0,TIME_PERIODIC);
//退出時
 timeKillEvent(uTimerID);                   //刪除定時器事件   
 timeEndPeriod(1);                          //清除定時器分辨率  



 

posted on 2007-10-17 17:38 Randy 閱讀(5515) 評論(1)  編輯 收藏 引用

評論

# re: 毫秒級計時器 2012-12-03 11:53 外貿領航

國外新聞http://www.ciqol.net/seenews  回復  更多評論   

<2012年12月>
2526272829301
2345678
9101112131415
16171819202122
23242526272829
303112345

導航

統計

常用鏈接

留言簿(3)

隨筆檔案

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久久久一本一区二区青青蜜月| 亚洲视频导航| 欧美日韩卡一卡二| 欧美精品在线免费播放| 久久精品国产精品亚洲| 亚洲一区二区三区午夜| 欧美电影免费观看网站| 欧美91精品| 亚洲自拍偷拍视频| 欧美日韩国产小视频| 欧美日本精品一区二区三区| 亚洲麻豆一区| 久久综合色影院| 久久黄色小说| 国产精品久久久久天堂| 毛片一区二区三区| 国产资源精品在线观看| 欧美亚洲一级| 久久精品日产第一区二区| 欧美一级免费视频| 日韩亚洲欧美成人| 午夜精品久久久久久久99水蜜桃 | 亚洲久色影视| 亚洲欧美日本国产专区一区| 亚洲国产精品99久久久久久久久| 99国内精品久久| 欧美日韩一本到| 久久久综合网站| 久久免费黄色| 在线观看日韩一区| 亚洲另类自拍| 欧美日韩综合精品| 美日韩免费视频| 国产日产亚洲精品| 亚洲激精日韩激精欧美精品| 欧美呦呦网站| 99精品国产福利在线观看免费| 亚洲国产日韩一级| 国产日韩在线视频| 亚洲国产合集| 激情五月婷婷综合| 今天的高清视频免费播放成人| 欧美黄色大片网站| 欧美日韩一区成人| 欧美va天堂| 一区二区三区在线看| 欧美在线观看视频一区二区| 欧美一区二区在线| 日韩视频在线一区| 国产精品亚洲成人| 欧美在线视频不卡| 亚洲一区久久| 欧美日韩高清在线| 亚洲一区二区综合| 一本色道**综合亚洲精品蜜桃冫| 午夜国产一区| 久久久久国内| 曰韩精品一区二区| 久久综合伊人77777| 亚洲欧美日韩精品久久久| 久久乐国产精品| 亚洲高清在线观看| 免费观看成人网| 91久久精品一区二区别| 欧美日韩精品伦理作品在线免费观看 | 国产精品无码专区在线观看| 亚洲黄色在线看| 亚洲一区二区伦理| 一区二区亚洲精品国产| 美女图片一区二区| 欧美jizz19性欧美| 亚洲免费视频观看| 国产亚洲欧美日韩一区二区| 欧美综合国产| 91久久在线播放| 玖玖精品视频| 亚洲激情视频在线播放| 欧美一区二区三区在| 欧美大片91| 亚洲国产精品一区在线观看不卡| 欧美在线免费看| 亚洲一区久久| 亚洲国产一区二区视频| 久久精品91久久久久久再现| 国产精品v片在线观看不卡| 亚洲视频在线一区| 99热免费精品| 亚洲卡通欧美制服中文| 欧美v日韩v国产v| 性做久久久久久| 一区二区三区高清在线| 亚洲精品视频中文字幕| 国产自产高清不卡| 欧美日韩在线不卡一区| 欧美日韩精品欧美日韩精品| 男人天堂欧美日韩| 亚洲一级黄色| 欧美在线观看日本一区| 亚洲在线黄色| 日韩午夜av在线| 亚洲激情欧美| 欧美激情bt| 亚洲免费高清| 欧美成人精品激情在线观看| 亚洲蜜桃精久久久久久久| 亚洲欧洲精品一区二区| 久久伊人亚洲| 欧美国内亚洲| 亚洲一区二区在线免费观看| 亚洲网站在线看| 久久riav二区三区| 欧美一级精品大片| 国产精品久久久亚洲一区| 国产精品狼人久久影院观看方式| aa级大片欧美三级| 一本综合久久| 亚洲在线不卡| 欧美日一区二区在线观看 | 激情五月婷婷综合| 亚洲人体一区| 香蕉乱码成人久久天堂爱免费| 亚洲国产精品久久久久婷婷884 | 亚洲人成在线观看网站高清| 亚洲欧洲一区二区三区久久| 亚洲一区二区三区777| 欧美大尺度在线观看| 一区二区三区四区蜜桃| 免费成人你懂的| 国产精品影音先锋| 亚洲图片欧美日产| 亚洲精品一区二区三区99| 亚洲国产成人精品久久久国产成人一区 | 亚洲男女自偷自拍| 欧美精品性视频| 国产精品专区一| 一本一道久久综合狠狠老精东影业| 久久久午夜电影| 欧美日韩亚洲一区二区三区| 亚洲电影在线播放| 亚洲欧美一区二区三区久久 | 久久久www| 91久久国产综合久久蜜月精品 | 国产日韩欧美一区在线 | 一区二区精品国产| 久久一区二区三区四区五区| 亚洲新中文字幕| 欧美在线免费| 国产偷自视频区视频一区二区| 一区二区三区日韩欧美| 一区二区三区日韩| 国产精品区二区三区日本| 久久夜色精品国产欧美乱| 久久人人看视频| 一区二区电影免费观看| 亚洲视频精选在线| 久久精品视频免费观看| 午夜激情综合网| 精品不卡视频| 亚洲美女电影在线| 黄色成人免费观看| 日韩午夜电影av| 1769国内精品视频在线播放| 最新日韩精品| 国产欧美日韩亚洲| 夜夜嗨av色一区二区不卡| 亚洲福利视频一区二区| 亚洲欧美日韩一区二区三区在线| 激情久久五月天| 午夜精品999| 亚洲视频免费在线| 欧美日韩综合一区| 99精品欧美一区| 亚洲国产精品va在线观看黑人| 亚洲人成人99网站| 影音先锋在线一区| 久久久国产一区二区三区| 亚洲国产你懂的| 老**午夜毛片一区二区三区| 久久久久久久精| 国产日韩欧美精品在线| 欧美专区亚洲专区| 乱人伦精品视频在线观看| 亚洲第一页中文字幕| 久久久久在线观看| 亚洲激情一区二区三区| 亚洲二区在线视频| 正在播放日韩| 欧美大学生性色视频| 亚洲国产专区校园欧美| 一本久道久久综合婷婷鲸鱼| 国产精品高潮呻吟久久av无限 | 欧美伊久线香蕉线新在线| 最新国产精品拍自在线播放| 久久在线免费| 亚洲乱码国产乱码精品精| 亚洲人体一区| 国产精品高清网站| 欧美一区成人| 亚洲免费观看高清完整版在线观看熊 | 亚洲精品三级|