、私が持っているコード:C#フォームショーと無限大の私のクラスのいずれかでループ
private static void Notify(string url, string author, string mess)
{
Toast slice = new Toast(100000, url, author, mess) { Height = 90 };
slice.Show();
return;
}
public void Job()
{
Notify("http://google.com", "username", "hi all");
while (true)
{
if (Run() == false)
break;
}
/* .... */
}
通知機能は、私のテキストと小さなボックスが表示されます。うまくいきますが、ループの後に来たらプログラムがハングアップします。つまり、Notify("http://google.com", "username", "hi all");
の後にreturn;
を追加すると、プログラムはハングしません。
別のスレッドでこの関数を作成しようとしましたが、何らかの理由で正しく機能せず、「ホワイトリスト」が表示されます。私は間違って何をしていますか、このような状況で何ができますか?悪い英語で申し訳ありません。
メインUIスレッドからしかUI要素を操作できません。UIをロックするため、同じスレッドでエンドレスループを実装しないでください。 –
このループは別のスレッドで実行されています。 – Anton
ええと...あなたの質問には言えません。 *別のスレッドでこの関数を作成しようとしましたが、何らかの理由で正しく動作せず、 "ホワイトリスト"が表示されます* UIスレッドでループを実行すると、何が起こっているのかが正確に説明されます。 –