- - PR -
CFでスレッドを一時停止・再開する方法
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-06-08 10:31
いつもお世話になっております。
コンパクトフレームワーク(CF)でスレッドをSuspend, Resumeする処理を行いたいのですが、CFでは Thread.Suspend も Thread.Resume もサポートされていないようです。 Thread.Sleep(Timeout.Infinite)で期限を指定せずにSleepさせられることは分かったのですが、どうやって起こせばいいのか分かりません。どのようにやればよいのでしょうか? それとも、何か良い方法がありますでしょうか? やりたいことは、ユーザーが一時停止ボタンを押せば処理スレッドを停止して、解除すれば再開するという単純なことです。 | ||||||||
|
投稿日時: 2006-06-08 10:47
スレッド周りは、2.0 か 1.1 以前かで大きく変わったにも関わらず、 Suspend メソッド Resume メソッドは未だにサポートされていませんね。
System.Threading.Thread.Sleep(System.Threading.Timeout.Infinite); ですが、 Sleep メソッドは静的メソッドであることに注意してくださいね。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-06-08 11:20
SemaphoreやAutoResetEventで代用が効きませんか?
「Threadの内部状態とまったく関係なく、Suspend/Resumeしなくてはならない」なんて要件、そう滅多にあるものじゃ無いと思うのだけど。 |
1