आप अपना मुख्य धागा WM_TIMER संदेश भेज सकते हैं। संदेश के लिए एलपीएआर कॉलबैक फ़ंक्शन का पता है, या आप इसे शून्य छोड़ सकते हैं और अपने संदेश पंप में इसे स्वयं संभाल सकते हैं।
इस उदाहरण में, हम थ्रेड संदेश पंप पर टाइमर भेज रहे हैं, टाइमर से जुड़ी खिड़की रखने की कोई आवश्यकता नहीं है।
UINT timer;
VOID CALLBACK Timer(HWND hwnd,
UINT uMsg,
UINT_PTR idEvent,
DWORD dwTime
)
{
KillTimer(0, timer);
}
timer=SetTimer(0, // window handle
0, // id of the timer message, leave 0 in this case
10000, // millis
Timer // callback
);
// pump messages
while (GetMessage) etc...
टाइमर कॉलबैक डिस्पैच मैसेज द्वारा बुलाया जाएगा। इस सवाल ने मुझे हाल ही में ONT की याद दिला दी।
स्रोत
2008-10-22 00:30:30
यह दिलचस्प लगता है, कृपया एक उदाहरण प्रदान करें –
यह अच्छी तरह से काम करता है, धन्यवाद! – dennisV