1
(setf buf (make-array 1024 :element-type 'unsigned-byte))
(receive-from socket
:buffer buf
:start 0
:end 1024))
何度も再試行しても、常にewouldblock
がスローされ、ソケットから何も読み取られません。どうして?ありがとう。なぜIOLibの "receive-from"関数は常にEWOULDBLOCK例外をスローしますか?
おかげでたくさん、私は問題を発見したと思う、私は読み取りを監視するために)(設定-IO-ハンドラを使用ソケットのイベントであるが、戻り値が関数ではない別の関数を呼び出すだけで引数 "function"が満たされたため、set-io-handler()が呼び出されたときに関数が常に呼び出されましたが、まだ準備ができておらず、readイベントのコールバック関数が正しく設定されていませんでした。 さらに、IOLibについての完全な文書はありますか?今すぐ私はそれのソースコードを読むことができます、初心者のためにそれほど簡単ではありません... –
IOLibに関する2つの便利なドキュメントがあります:http://common-lisp.net/project/iolib/manual/とhttp: /pages.cs.wisc.edu/~psilord/blog/data/iolib-tutorial/tutorial.html。また、Stellia Ionescuがより包括的なドキュメントを作成することを約束していると聞いてきました。 –