- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:STDINによるキーボードからの入力について)
STDINによるキーボード入力:受信内容の表示と送信内容の処理方法
このQ&Aのポイント
- Perlのネットワークプログラミングでインスタントメッセンジャーのようなものを作成したい場合、受信内容の表示と送信内容の処理を1つのwhileループ内で実現する方法について知りたいです。
- <STDIN>で入力待機状態になるとループが止まってしまい、受信内容の表示が滞ってしまいます。入力待ちしながらも受信内容を処理する方法を教えてください。
- 過去にはスレッドを利用して受信と送信を分ける方法が紹介されましたが、スレッドを使用せずに1つのwhileループで実現する方法があれば教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
がると申します。 んっと。そういった処理は、SELECTという関数で実現が可能です。 SELECTは「指定されたファイルハンドルになんかデータが来るか、でなきゃ指定時間までロック」する関数なので。 …ただ、正直、結構扱いの難しい関数ではあります。 原則、C言語のselect関数と使い方は大差ないので、socket selectとかでgoogleで検索して、まずは雰囲気を掴むと楽かもしれません。
お礼
お早い回答ありがとうございます♪ 結構難しそうですが、頑張ってselectを使って書いてみようと思います!