タグ

2019年6月28日のブックマーク (3件)

  • イベント - C# によるプログラミング入門 | ++C++; // 未確認飛行 C

    概要 C# には、イベント駆動型のプログラム作成を容易にするため、 イベント処理用の構文 event が用意されています。 event は、デリゲートに対する「プロパティ」のようなもので、 以下のような特徴を持っています。 デリゲート呼び出しはクラス内部からのみ可能。 外部からはデリゲートの追加/削除のみが可能。 サンプル https://github.com/ufcpp/UfcppSample/tree/master/Chapters/Event/EventDriven ポイント イベント: プロパティのデリゲート版。イベント駆動処理に使われるのでこの名前になっています。 イベント駆動処理には、単なるデリゲート型のプロパティでは機能が不十分で、 「呼び出しはクラス内からのみ、外部からできるのは登録・削除のみ」という制約が必要になります。 C# には、この制約を満たすような専用の構文(ev

    イベント - C# によるプログラミング入門 | ++C++; // 未確認飛行 C
    takujitsu
    takujitsu 2019/06/28
    イベント制御
  • TCPクライアント・サーバープログラムを作成する: .NET Tips: C#, VB.NET, Visual Studio

    TCPクライアント・サーバープログラムを作成するここでは、TCP(Transmission Control Protocol)サーバーとクライアントを作成する方法の基的な事柄について説明します。非同期処理などのさらに高度な事柄については、「TCPを利用した複数クライアント接続可能なチャットアプリケーションを作る」で説明します。 TCPサーバーはTcpListenerクラスを、TCPクライアントはTcpClientクラスを使用して作成すると、比較的簡単(といっても難しいですが)にできます。 TCPサーバーの作成サーバーは指定されたポートを監視し、クライアントの接続要求を待ちます。クライアントからの接続要求があり、これをサーバーが受け付けると、接続が完了し、切断するまでの間、データの送受信が可能となります。 早速、TCPサーバーを作ってみましょう。大ざっぱな手順は次のようになります。 Tcp

    TCPクライアント・サーバープログラムを作成する: .NET Tips: C#, VB.NET, Visual Studio
    takujitsu
    takujitsu 2019/06/28
    TCP/IPテストコード
  • マルチスレッドプログラミング

    プログラムがどうやって実行されるか考える場合、考え方の一つに「ロボットがプログラムの命令を順次解釈していく」というものがある。 このロボットはプログラム内の各命令を順番に調べていき、その命令を正確に解釈することによってプログラムを実行する。 if-else などの分岐が起こった場合や、for, while などで繰り返しを行う場合、メソッドを呼び出す場合も同様である。 ロボットの通り道を矢印で表したが、この矢印はプログラムの実行中、一の糸のように途切れることなく続いている。if, for などの繰り返し命令、メソッド呼び出しなどの命令を解釈する場合にも、ロボットがたどった道は一の制御の流れで表すことができる。 このような一連の制御の流れを、スレッド (thread of control) と呼ぶ。 これまでのプログラムは、基的にスレッドが一だけであった。 java.lang.Thr

    takujitsu
    takujitsu 2019/06/28
    マルチスレッド