私は実際にそこに多くの情報を見つけることができませんこれを言及。これらの標準的なio記述子は、Luaでデフォルトでバッファリングまたはバッファリングされないように設定されていますか?必要に応じて、あるモードから別のモードに切り替えることはできますか?例えばLuaではstdin、stdout、stderrがバッファリングされているかバッファされていませんか?
は、Pythonでそれがバッファなし作るためsys.stdin.detach
のようなものを提供します。
私は実際にそこに多くの情報を見つけることができませんこれを言及。これらの標準的なio記述子は、Luaでデフォルトでバッファリングまたはバッファリングされないように設定されていますか?必要に応じて、あるモードから別のモードに切り替えることはできますか?例えばLuaではstdin、stdout、stderrがバッファリングされているかバッファされていませんか?
は、Pythonでそれがバッファなし作るためsys.stdin.detach
のようなものを提供します。
setvbufを参照してください。それは基礎となるC setvbuf
機能へのインタフェースです。
たとえば、あなたはこのようにそれを使用することができます:
io.stdout:setvbuf 'no' -- switch off buffering for stdout
私の知る限りLuaは標準ストリームにフックする基礎となるCランタイムに依存しているので、私はC標準ストリームのための通常の保証が適用さだと思います。この質問として
も標準ストリームのためのデフォルトバッファネスを要求します。 Luaは内部的にCの標準ストリームを使用しているので、同じルールが適用されます。
標準Cは必要です:
POSIXは意味(ただし、必要ではない):
Cと同じように、setvbuf
を使用してバッファステータスを変更できます。