0
即使我們不需要等待結果,我們是否需要在調用委託BeginInvoke()之後調用EndInvoke()並關閉等待句柄? 任何資源泄漏,如果不這樣做?是否需要爲代理BeginInvoke進行清理?
即使我們不需要等待結果,我們是否需要在調用委託BeginInvoke()之後調用EndInvoke()並關閉等待句柄? 任何資源泄漏,如果不這樣做?是否需要爲代理BeginInvoke進行清理?
是;你總是需要撥打EndInvoke()
。
否則,.Net會永久保存結果,以防您最終打電話EndInvoke()
。
如果你想要一個「消失並忘記它」的異步調用(或者即使你不需要),你應該使用Task
類,這更好。
否.NET 2.0/3.5中的任務類 – linquize
然後使用'ThreadPool'。 – SLaks