我實現具有BeginSomething()
和EndSomething()
對接口,以及我的實現是一個方法Execute()
我可以修改BeginInvoke我的委託的線程的性質嗎?
所以我創建一個Action action = Execute
,並調用BeginSomething action.BeginInvoke
,並action.EndInvoke
在EndSomething。但是,我的Execute方法必須由其公寓狀態爲STA(單線程單元)的線程調用。通常這是通過調用Thread.SetApartmentState
完成的,但在這種情況下,我不知道哪個線程將調用我的方法。
我該如何讓調用線程STA?