2010-05-04 24 views
0

林製造的Windows Mobile應用程序,我想知道我怎麼去這樣做後臺處理(即線程)我該怎麼做後臺處理,在Windows Mobile 6

有一種特殊的方式與Windows Mobile做到這一點?

從您的答案和評論看起來最好的方法是使用.NET線程類。我想我在這裏預計太多了......

+0

重複多次,請參閱http://stackoverflow.com/questions/1323596/net-compact-fw-3-5-background-worker – 2010-05-04 11:57:55

回答

1

您需要區分進程線程。如果你在一個.NET進程中創建一個新的線程,它使用相同的過程...但這不同於使用原始線程

請詳細描述「似乎無法正常工作」的「內置.NET類」 - 我的懷疑是您要麼沒有正確使用它,要麼有不正確的期望。根據我的經驗,在.NET CF項目中使用後臺線程可以正常工作。

+0

葉,我的這個問題的措辭是非常糟糕的... 很多,我希望我的應用程序在後臺執行一些操作(即讀取文件),而不是放慢UI,如果這樣做更有意義? – dkarzon 2010-05-04 11:55:46

+1

@ d1k_is:是的,所以你可以像使用普通的.NET一樣使用後臺線程。你需要回到UI線程來更新它。現在,請編輯您的問題,以說明您的正常.NET類不能正常工作的意思......理想地使用代碼。 – 2010-05-04 11:58:28

1

在一個控制檯應用程序使用下面的代碼,我得到兩個不同的線程id的(和調試很明顯,它們同時運行):

static void Main(string[] args) 
    { 
     new Thread(new ThreadStart(ThreadMethod)).Start(); 
     Console.WriteLine("Thread " + Thread.CurrentThread.ManagedThreadId + " has control"); 
     Console.ReadLine(); 
    } 

    static void ThreadMethod() 
    { 
     Console.WriteLine("Thread " + Thread.CurrentThread.ManagedThreadId + " has control"); 
    } 

即使在模擬器上。你可以看看你的模擬器是否屬於這種情況。