私はJavaでMUDに取り組んでいます。プレーヤーの入力をティックごとに読み取りますが、Scanner
ブロッキング操作を使用するものを使用しています。ノンブロッキング入力が欲しい。
nio
クラスを持つパッケージを見てきましたがSelector
、 に関してそれを使用する方法がわかりませんSystem.in
。サーバーを稼働させたら間違いなく必要になると思いますが、今のところすべてオフラインです。
からメインクラスを拡張してApplet
オーバーライドしようとしましkeyDown
たが、最初の入力の後に入力が受け入れられなくなっただけです。確かに、もう何もブロックしていませんでしたが、それ以上の入力はありませんでした。keyDown
二度と呼ばれなかったと思います。
スレッドがブロック操作を実行している場合でも、スレッドが中断される可能性がありますか?
この問題についての洞察に感謝します。