1
我一直在尋找2天的答案,現在我真的被卡住了!我發現這個question,但答案沒有奏效。如何在Jscript .NET的新線程中運行方法
我有一個jscript類,WorkerClass
,它有一個函數PerformCalculation
,它需要在單獨的線程上運行,因爲它無法在UI線程上運行。
這是我的解決方案:
CallerClass
private function PerformCalculation() {
var workerClass = new WorkerClass(parameter1, parameter2, parameter3);
var workDelegate : ThreadStart = new ThreadStart(workerClass.PerformCalculation);
var workerThread : Thread = new Thread(workDelegate);
workerThread.Start();
workerThread.Join();
}
我已經嘗試了一些事情,如:
- 把
PerformCalculation
功能在CallerClass
- 把在一個單獨的類的
PerformCalculation
功能,即WorkerClass
- 使得
PerformCalculation
功能private
,public
,static
,並沒有訪問修飾符(默認) var workerThread : Thread = new Thread(workerClass.PerformCalculation);
前三情況下,我得到了下面的編譯時錯誤:
Delegates should not be explicitly constructed, simply use the method name
和最後一種情況給出了下面的編譯時e RROR:
More than one constructor matches this argument list
你覺得是我的代碼,我該如何解決這個問題?
在此先感謝!
我不知道JScript.Net的語法,但你嘗試過'var workDelegate:ThreadStart = workerClass.PerformCalculation;'? – svick 2012-07-31 07:24:32
編譯好的@svick。我會嘗試運行它。謝謝。 – Sinker 2012-07-31 07:32:22
它絕對按照需要@svick工作。你想複製你上面寫的答案作爲答案,所以我可以指定它作爲正確的答案。 – Sinker 2012-07-31 08:29:16