.NET Framework クラス ライブラリ
Thread コンストラクタ (ThreadStart, Int32)

更新 : 2007 年 11 月

Thread クラスの新しいインスタンスを初期化して、スレッドの最大スタック サイズを指定します。

名前空間 :  System.Threading
アセンブリ :  mscorlib (mscorlib.dll 内)

構文

Visual Basic (宣言)
Public Sub New ( _
    start As ThreadStart, _
    maxStackSize As Integer _
)
Visual Basic (使用法)
Dim start As ThreadStart
Dim maxStackSize As Integer

Dim instance As New Thread(start, maxStackSize)
C#
public Thread(
    ThreadStart start,
    int maxStackSize
)
Visual C++
public:
Thread(
    ThreadStart^ start, 
    int maxStackSize
)
J#
public Thread(
    ThreadStart start,
    int maxStackSize
)
JScript
public function Thread(
    start : ThreadStart, 
    maxStackSize : int
)

パラメータ

start
型 : System.Threading..::.ThreadStart

このスレッドが実行を開始するときに呼び出されるメソッドを表す ThreadStart デリゲート。

maxStackSize
型 : System..::.Int32

スレッドが使用する最大スタック サイズ。実行可能ファイルのヘッダーで指定された既定の最大スタック サイズを使用する場合は 0。

例外

例外条件
ArgumentNullException

startnullNothingnullptrnull 参照 (Visual Basic では Nothing) です。

ArgumentOutOfRangeException

maxStackSize が 0 未満です。

解説

このコンストラクタのオーバーロードを使用しないでください。スレッドのスタック サイズとして推奨されるのは、Thread(ThreadStart) コンストラクタのオーバーロードで使用される既定のスタック サイズです。スレッドにメモリの問題がある場合、無限再帰のようなプログラミング エラーが原因と考えられます。

maxStackSize が最小スタック サイズより小さい場合は、最小スタック サイズが使用されます。maxStackSize がページ サイズの倍数でない場合は、次に大きいページ サイズの倍数に繰り上げられます。たとえば、Microsoft Windows Vista で .NET Framework Version 2.0 を使用している場合、最小スタック サイズは 256 KB (262144 バイト)、ページ サイズは 64 KB (65536 バイト) です。

メモ :

Windows XP および Windows Server 2003 より前のバージョンの Microsoft Windows では、maxStackSize は無視され、実行可能ファイルのヘッダーで指定されたスタック サイズが使用されます。

スタック サイズを非常に小さく指定した場合、スタック オーバーフロー調査を無効にする必要が生じることがあります。スタックの制約を厳しくすると、この調査自体がスタック オーバーフローの原因になることがあります。スタック オーバーフロー調査を無効にするには、アプリケーション設定ファイルに次のコードを追加します。

<configuration>
  <runtime>
    <disableStackOverflowProbing enabled="true"/>
  </runtime>
</configuration>
プラットフォーム

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360

.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。

バージョン情報

.NET Framework

サポート対象 : 3.5、3.0、2.0

.NET Compact Framework

サポート対象 : 3.5、2.0

XNA Framework

サポート対象 : 2.0、1.0
参照

参照

タグ :


Page view tracker