【】Top

【】VB.NET
【】VB6.0

【】メールマガジンの購読
【】メールマガジンの解除






【】会社概要

【】お問い合わせ


姉妹サイト「バーチャルコネクション!」はこちらです。

姉妹サイト「七福神のメールでビンゴ!」はこちらです。

アイネットマコト

●24時間365日の安心をあなたにAT-LINK専用サーバ・サービスお勧めのサーバです。






スレッドによる実行制御

.NET では、スレッドを用意にコントロールできる機能が用意されています。
この機能を使えば、簡単に、
処理の停止や、中断再開をするような
アプリケーションを作成できます。


-----------VB.NETコーディングここから-------------------
1.フォームに、ラベルコントロールを配置します。
    (デフォルトのオブジェクトの名前 Label1)

2.フォームで右クリックして、「コードの表示」を
  選び、コード編集画面にします。

3.宣言部に、次のコードを記述します。

    Private thr As System.Threading.Thread


4.さらに、 Public Class Form1 内に、
  次のコードを記述します。

    Sub run()

        Dim intCount As Integer
        Do
            intCount = intCount + 1
            If intCount > 99999 Then
                intCount = 1
            End If
            Label1.Text = intCount

        Loop

    End Sub

5.フォームに、ボタンコントロールを配置します。
    (デフォルトのオブジェクトの名前 Button1)

6.ボタンコントロールの
    text プロパティに「スタート」と記述します。
  ※説明用のためです。必須ではありません。

7.ボタンコントロールをダブルクリックして、
    ボタンのクリックイベントの編集を開始して、
  次のコードを記述します。


    Private Sub Button1_Click(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles Button1.Click

        'サブルーチンをスレッドとして作成
        thr = New System.Threading.Thread(AddressOf Me.run)
        'スレッドの開始
        thr.Start()

    End Sub

8.フォームに、ボタンコントロールを配置します。
    (デフォルトのオブジェクトの名前 Button2)

9.ボタンコントロールの
    text プロパティに「終了」と記述します。
  ※説明用のためです。必須ではありません。

10.ボタンコントロールをダブルクリックして、
    ボタンのクリックイベントの編集を開始して、
  次のコードを記述します。


    Private Sub Button2_Click(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles Button2.Click

        'スレッドの強制終了
        thr.Abort()

    End Sub


11.ビルドして実行します。

12.フォームに配置したボタンコントロール「スタート」を
  クリックしてみると、フォーム上にカウンタが加算される
  動作を行います。(表示上)

13.フォームに配置したボタンコントロール「終了」を
  クリックしてみると、フォーム上にカウンタが加算される
  動作がストップします。(表示上)


-----------VB.NETコーディングここまで-------------------

このほかに、
thr.Suspend() 'スレッドの中断(中断後、再開が可能)
thr.Resume() 'スレッドの再開

などが使用できます。(他にも用意されています)

上記、 thr は、宣言部で作成した定義名称であり、
固定的なものではありません。

    Private thr As System.Threading.Thread

説明上、定義させていただきました。

スロットや、複数のスレッドを実行させるようなアプリケーションでは、
大変便利になりましたね・・・






 

http://anetm.com/dev/d.cgi?SC=DTDTL&o=O/O

Copyright(c)2001-2004 Ai Net Makoto 記事・情報の無断転載を禁止します。

「これがほしかった!厳選サンプルツール集」の注意点
●当サイトはリンクフリーです。
2005/10/06(木)00:05 更新