2013-10-03 56 views
1

如何暫停執行我的CS腳本,如何等待主調用線程。C中的CS腳本#

我有一個循環。但第二次迭代開始時沒有完成第一次迭代。 並執行第二個csscript。

foreach (var website in siteList) 
     { 
      try 
      { 
       string url = Common.GetWebSearchURL(website.ToUpper()); 
       string webFile = Common.GetWebSearchURL(website.ToUpper() + "_SCRIPT"); 
       CSScript.Evaluator.ReferenceAssembliesFromCode(webFile, true); 
       ICommon script = CSScript.Evaluator.LoadFile<ICommon>(webFile); 
       script.Run(ref pnlBroswer, website, url); 

      } 
      catch (Exception ex) { } 
     } 
+0

腳本是否在執行異步而不是同步工作? – Servy

回答

0

你也可以有腳本留下一些證據表明,它完成。它可以輸出一個值到一個文本文件,或者只是創建一個文件,無論如何。你調用腳本,然後檢查該指標,直到找到它(或決定放棄),然後繼續。

bool CheckFile() { return someFileContainsValue } 

try 
{ 
    bool completed = false; 
    executeScript(); // will update a text file when complete 
    while(!completed) 
    { 
     completed = CheckFile(); 
    } 
}

顯然異步版本將是清潔,但原理是一樣的。