注意 このページにアクセスするには、承認が必要です。 サインインまたはディレクトリの変更を試すことができます。 このページにアクセスするには、承認が必要です。 ディレクトリの変更を試すことができます。 サンプル コードのダウンロード (vbmigtips_SeriaPort.msi, 481 KB) Visual Studio 2005 では、.NET Framework 2.0 のサポートによって、新たにシリアル通信の実装が簡単に行えるようになりました。そこで今回は、シリアル通信方法について紹介します。 Visual Basic 6.0 や Visual Basic .NET では、シリアル通信の実装のためのクラスやメソッドはサポートされていませんでした。一方、Visual Basica 2005 では、System.IO.Ports.SerialPort クラスや SeriaPort
マネージド配列からアンマネージドメモリへのコピー usingディレクティブを使って、using System.Runtime.InteropSevices;をコードに入れておく。 COMタスクメモリアロケータから、指定したサイズのメモリブロックを割り当てる。 IntPtr buffer = Marshal.AllocCoTaskMem(Marshal.SizeOf(typeof(int)) * n.Length); (注)nはint型の配列 int[] n = new Int[] {1, 2, 3, 4, 5} MarshalクラスのCopyメソッドを使い、マネージド配列からアンマネージドのメモリブロックにコピーする。 Mashal.Copy(n, 0, buffer, n.Length); C#の配列はSystem.Arrayクラスを継承するオブジェクトなので、配列の長さはn.Len
目次 はじめに 対象読者 必要な環境 Monitor.Wait・Pluseメソッド ReaderWriterLockクラス Mutexクラス スレッドセーフなコレクション Synchronizedメソッド IsSynchronizedプロパティ コレクションの列挙処理 スレッドタイマ ThreadPool.RegisterWaitForSingleObjectメソッド WaitHandleによる待機 タイムアウト Unregisterメソッド まとめ 参考資料 はじめに パート1、パート2では、筆者が.NET Frameworkにおけるマルチスレッドプログラミングで、必ず知っておくべきと判断した事柄を紹介しました。パート3では、その他に知っておくと便利な、Mutexによるプロセス間の同期や、スレッドタイマの利用方法などについて解説します。 対象読者 この記事はパート1、パート2の続きですの
第2回 簡潔なコーディングのために (2017/7/26) ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21) Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう 第1回 明瞭なコーディングのために (2017/7/19) C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える Presentation Translator (2017/7/18) Presentation TranslatorはPowerPoint用のアドイン。プレゼンテー
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く