C#

【C#】Windowsフォームアプリで実行ファイルのパスと名前を取得する方法

この記事では、C#を使用してWindowsフォームアプリケーションでアプリケーション自身の実行ファイルパスとファイル名を取得する方法について紹介します。 サンプルコード アプリケーションの絶対パスは Application.Executab...
C#

【C#】16進数表記の文字列を整数に変換(0xで始まる場合も)

C#で16進数表記の文字列を数値に変換するサンプルコードです。 サンプル1:Parseメソッドを使用 int.Parseメソッドの引数に System.Globalization.NumberStyles.HexNumber を指定します。...
バッチファイル

バッチファイルで日付や時間を好みの形式に変換(例:YYYY-MM-DD)

今日の日付や現在の時刻でフォルダを作成したい場合など、日付や時刻を任意の形式に変換する方法のサンプルです。 サンプルコード @echo off echo 日時をそのままのフォーマットで表示 echo %DATE% %TIME% echo. ...
C#

【C#】スレッドの終了を待つ(Thread.Join)

この記事では、スレッドの終了を待つサンプルコードを紹介します。 サンプルコード サブスレッドの Join メソッドを使用することで、サブスレッドの作業がすべて完了するまで、メインスレッドの実行がブロック(一時停止)されます。 using S...
C#

【C#】スレッドに引数を渡す2つの方法

C#でスレッドを使う際、スレッドのメソッドに引数を渡す方法を2つ紹介します。 ParameterizedThreadStart を使用するサンプルコード ParameterizedThreadStartを使用することで、スレッドメソッドに ...
C#

【C#】スレッドの処理の途中で外部からキャンセル終了する

スレッドの処理を外部から途中で終了させる方法を紹介します。 方法1:フラグを使用 フラグを使用してスレッドのループを制御し、外部からそのフラグを変更することでスレッドの実行を終了させる方法です。 using System; using Sy...
C#

【C#】スレッドのデッドロック:問題と対策

デッドロックは、複数のスレッドが互いに相手のリソースの解放を待っている状態で、どのスレッドも進行できなくなる問題です。ここでは、C#でデッドロックを起こすサンプルコードとその対策版を紹介します。 デッドロックが発生するサンプルコード 以下の...
C#

【C#】スレッド間のリソース共有: 問題と対策(lock ステートメント)

マルチスレッドプログラミングにおいて、スレッド間でリソースを共有する際、適切な同期処理を使用しないとデータの不整合や予期せぬバグが発生する可能性があります。この記事では、C#でスレッド間のリソース共有に関する問題発生と対策方法を紹介します。...
C#

【C#】スレッドで並列処理を行う

マルチスレッドプログラミングは、アプリケーションのパフォーマンスを向上させる強力な方法です。C#においては、比較的簡単にスレッドを作成して利用することができます。 サンプルコード 以下のサンプルコードは、2つのスレッドを並列実行させています...
C#

【C#】親プロセスのプロセスIDを取得する(祖父プロセスIDも)

バッチファイルで自身のプロセスIDを調べようと思うと確実な方法がないので、バッチファイルから呼び出されるコマンド側でプロセスIDが取得できないかと調べました。出来そうな方法が見つかったので紹介します。 サンプルコード 準備 プロジェクトの参...