y‰SŽÒнŒ}zC/C++Ž ..
[
2ch
|
¥Menu
]
¡ƒRƒsƒyƒ‚[ƒh
ƒXƒŒ‚ð’Êí•\ަ
ƒIƒvƒVƒ‡ƒ“ƒ‚[ƒh
‚±‚̽گÄÞ‚ÌURL
¡€–ÚƒeƒLƒXƒg
151:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ 09/02/21 16:52:10 template<typename T> HANDLE beginthread2(T& x, UINT (T::*memFn)(), int priority = THREAD_PRIORITY_NORMAL, UINT stack = 0, DWORD flags = 0, LPSECURITY_ATTRIBUTES lpsa = 0) { typedef std::pair<T*, UINT (T::*)()> thread_data_t; std::auto_ptr<thread_data_t> ptd(new thread_data_t(&x, memFn)); uintptr_t ret = _beginthreadex(lpsa, stack, beginthread2_entry<T>, ptd.get(), flags, 0); if (ret != 0) ptd.release(); return reinterpret_cast<HANDLE>(ret); } int main() { Hoge hoge; ATL::CHandle h(beginthread2(hoge, &Hoge::Proc)); if (h != 0) WaitForSingleObject(h, INFINITE); } 152:ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ 09/02/21 17:21:28 ‚·‚Ü‚ñBŒ³‚Ì122‚̃R[ƒh‚Ìmem_fn_t‚Ìmem_fn_t mf = ptd->second;‚Ìs‚Í UINT (T::*mf)() = ptd->second;‚ª³‚µ‚¢B ‰üs§ŒÀ‚Åtypedef‚ð‚â‚ß‚½‚̂ɒ¼‚·‚Ì‚ð–Y‚ê‚Ä‚¢‚½‚Ý‚½‚¢‚¾B ‚»‚µ‚½‚çVC++2005‚Å‚à’Ê‚éB
ŽŸƒy[ƒW
ÅVƒŒƒX•\ަ
ƒXƒŒƒbƒh‚ÌŒŸõ
—ÞŽ—ƒXƒŒˆê——
˜b‘è‚̃jƒ…[ƒX
‚¨‚Ü‚©‚¹ƒŠƒXƒg
¥ƒIƒvƒVƒ‡ƒ“‚ð•\ަ
ƒŒƒXƒWƒƒƒ“ƒv
mixiƒ`ƒFƒbƒNI
Twitter‚É“Še
ƒIƒvƒVƒ‡ƒ“
‚µ‚¨‚è‚ð‹²‚Þ
ƒXƒŒƒbƒh‚É‘ž
ƒXƒŒƒbƒh‚̈ꗗ
‰É‚‚Ԃµ2ch
4998“ú‘O‚ÉXV/69 KB
’S“–:undef