- - PR -
C#のスレッドと非同期ソケット実装方法について
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2004-04-12 10:27
C#初心者です。
C#の実装方法について質問があります。 @VC++で実装するユーザインターフェイススレッドのようなスレッドの実装方法 ワーカースレッド的な使用方法をしている例はよく見るのですが、 ユーザインターフェイススレッドの例は見たことがありません。 基本的にC#では使用しないということなのでしょうか? また、他スレッドにメッセージを送信する方法がわかりません。 eventキーワードで実装していく?とできるのでしょうか? A非同期ソケットの実装方法 MFCのCAsyncSocketクラスのように相手側からの接続や切断情報を受信した結果 を知る方法がわかりません。 CAsyncSocketでは、OnConnect、OnCloseなどの関数があったと思いますが... 同様の関数があるのでしょうか? こういう処理は、一般的にどのように実装するのでしょうか? ご存知の方、いらっしゃいましたら回答をお願いいたします。 以上。 |
|
投稿日時: 2004-04-12 12:28
.NETのはなし?MFCのはなし?
.NET frameworkを使用した非同期ソケットのサンプルであれば、 .NET Compact Framework Sample: Signature Captureが参考になるのではないでしょうか? .NET Compact Frameworkのサンプルですが、CF専用のAPIを使用しているわけではないので、問題ないと思います。 MFCのことは、わかりません。 |
|
投稿日時: 2004-04-12 17:02
話がややこしくてすみません。
やりたいことは単に、 非同期ソケットで接続し、接続できなければ一定周期後に再接続する。 このとき、BeginConnect実行で、エラーが発生したかどうかチェックするタイミングは いつが普通なのでしょうか? この接続失敗のタイミングで、再接続するタイマを設定するのですが、 ソケット側が非同期で動作している都合上、どのタイミングで接続処理成功失敗 の判断をしてよいかわかりません... ちなみに判断処理はSelect、Poll関数でいいんですよね? またVCの例のOnCloseなどの関数は、リモートホスト(相手側ソケット)が切断してきた場合に自動で呼ばれ、ソケット側からアプリ側へ自動で通知することができます。 このような仕組みはC#でどのように実装するのか質問したいという意図で 引き合いに出しました。 例に挙げていただいたサンプルですが、難しくてよくわかりませんでした... |
1