以下のコードが気になる。
message_count を減少させるのは唯一、wait_message() しか見つからなかった。
後は、check_for_driver_events() の中で単調増加してしまう。
メッセージがたまって初めて、flush_window_surfaces() が呼び出されるような
コードにも
/* check for driver events if we detect that the app is not properly consuming messages */
static inline void check_for_driver_events( UINT msg )
{
if (get_user_thread_info()->message_count > 200) {
flush_window_surfaces( FALSE );
USER_Driver->pMsgWaitForMultipleObjectsEx( 0, NULL, 0, QS_ALLINPUT, 0 );
}
else if (msg == WM_TIMER || msg == WM_SYSTIMER) {
/* driver events should have priority over timers, so make sure we'll check for them soon */
get_user_thread_info()->message_count += 100;
}
else get_user_thread_info()->message_count++;
}
static DWORD wait_message( DWORD count, const HANDLE *handles, DWORD timeout, DWORD mask, DWORD flags )
{
DWORD ret = USER_Driver->pMsgWaitForMultipleObjectsEx( count, handles, timeout, mask, flags );
if (ret == WAIT_TIMEOUT && !count && !timeout) NtYieldExecution();
if ((mask & QS_INPUT) == QS_INPUT) get_user_thread_info()->message_count = 0;
return ret;
}
今夜も Wine で乾杯! - 21本目 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
449396
2018/02/21(水) 17:57:13.78ID:SJPTXnf1■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【自動車】残クレ650万円で買った「アルファード」わずか8ヶ月で廃車に…まだ残価580万円あるのに全部“借金”? 相手のいる事故でも? [ぐれ★]
- 酷すぎる愛知名古屋アジア大会、貧相な食事、小さすぎるベッドに男女同室のミス、国歌も間違えグダグダな運営対応に海外から大ブーイング [征夷大将軍★]
- FC東京に激震 DF長友佑都、右膝関節前十字じん帯損傷 40歳誕生日に悲劇 長期離脱避けられず [征夷大将軍★]
- 【福岡】「裸を撮られた」18歳女子高校生が届け出て発覚 元交際相手の18歳高校生の男「彼氏に動画を見せれば別れて戻ってくると…」 [ぐれ★]
- 映画「ちいかわ」勢い止まらず! 公開から59日間で興収158億円突破 今年の興収ランクトップを快走 [征夷大将軍★]
- timelesz猪俣周杜(25歳)「口論になってパニックに」 女性が鼻から出血し顔にアザ★3 [ヴァイヴァー★]
- 障害厚生年金2級ってズルくね?俺は基礎2級だからA型作業所で働かないといけない… [841411289]
- 男はATM ⬅︎女は? [595118796]
- 【悲報】関東、レベル4警報出まくり [535650357]
- 小野田大臣(35)「私20年間テレビ持っていません」 [834922174]
- 青森、岩手、秋田に旅行行くからおすすめ教えろ!
- 無理やり肛門舐めさせられてキツかった