|
分類:[.NET 全般]
VisualStudio 2013 .Net 4.0 です。
スレッドの方法を知りたくていろいろ検索して回ったのですが まったくわかりませんでした。 よく、ネットを調べていると Console.WriteLine(""); というのが使用されているのですが何も表示されない。 Windows フォームアプリケーションだからでしょうか?
一般には、コンソールアプリケーションでしか プログラムは作られていないということですか? または、Console.WriteLine を表示する方法がありますか?
表示されないので、代替えとして MessageBox.Show() で置き換えたりするのですが 今回は、コンソールの代替えとして RichTextBox を使いました。 (他には、TextBoxのマルチラインしか思い浮かびませんが。)
最終的にはスレッドで計算された値を List<int>に
以下、まったく理解できないので中途半端なプログラムで、 ビルドもできませんが、行き詰っています。
ボタンクリックでスレッド処理を行う worker を設定してスレッド実行する。 スレッドで実行されているworker から 文字列を表示させる
public partial class Form1 : Form { List<int> datalist = new List<int>();
public Form1() { InitializeComponent(); }
private void button1_Click(object sender, EventArgs e) { Thread t = new Thread(new ThreadStart(worker)); t.Start(); }
delegate void AppendTextDelegate(string msg); AppendTextDelegate Appendtext;
void worker() { Appendtext = new AppendTextDelegate("123\r\n"); ←() だと 引数がないとエラーが出るので
datalist 作成(時間がかかる)を行う。 } }
追記: Task(async/await) を使うという方法も見かけたのですが、こちらの方は 全く理解できず。サンプルも動作しませんでした。
public async void SampleAsync() {・・・・} async が存在しなかったので断念。
|