私は現在、2つのクライアントがサーバーに接続するC++でサーバー/クライアント実装をコーディングしています。私は以前の経験(私はC++を初めて使っています)から、各クライアント(およびサーバ)にイベントハンドラがあり、クライアントがサーバにメッセージを送信したいとき、またはクライアントがクライアントにメッセージを送信したいときサーバーからメッセージを受信しました。あなたはチャットサーバーとしてそれを見ることができます。クライアントからの「発信」イベントは、ユーザがコンソールに何かを入力することによって引き起こされ、「着信」イベントは、サーバからデータを受信することによってトリガされ得る。C++でのネットワークのイベント処理
これをC++でコーディングする標準的な方法はありますか?私は理想的には、可能なイベントタイプごとにコールバック関数を登録し、それぞれのイベントが受信されたときにコンテキストハンドラにコンテキストとして返されるように登録されたコールバック関数を登録したいので、それぞれのイベントを特定の処理関数で処理できます。もちろん、イベントが処理されると、私のプログラムはイベントループに戻ります。
アイデア?私はイベント主導のプログラミングスタイルに非常に満足しているので、まったく新しいパラダイムを学ぶのではなく、可能であればこの方法でそれを保つことを好みます。