RETURNキーを押すのを待つ方法の1つは、std :: ignore()を呼び出すことです。しかし、私がnohupを使用すると、std :: ignore()は常にただちに戻ります。 keypressを待つ代わりの方法が存在するのでしょうか、それともnohupでうまくいくのでしょうか?nohupとstd :: ignore()が一緒に動作しない
答えて
コマンドを実行するためにnohup
を使用する場合、それはは/ dev/nullにあなたのコマンドの標準入力を接続しているので、ためキー操作のいずれか種類を待つ方法はありません。
/dev/nullからの読み取りを試みると、自動的にEOFで応答します。
私はこれが(未テスト)以下のコードを使用してチェックすることができると思います。これはstd::cin
は、標準入力に関連付けられていることを標準保証として、動作するはず
#include <unistd.h>
...
if (isatty(fileno(stdin))) ...
。
私はこの問題を解決:
std::this_thread::sleep_for(std::chrono::system_clock::duration::max());
あなたはただ永遠に眠りたいのですか?私はその質問からそれを推測したことはありませんでした。 – Useless
stdinからの読み込みはすぐに戻りますので、唯一行うことは無期限に待つことです。 – user1095108
私は、あなたが達成しようとしていることを決して言わなかったことを指摘しています。これはむしろ潜在的な回答の質を制限します。 – Useless
から
キー入力を待つ別の方法が存在していますか?
キー押しはどこかから来ている必要があります。制御端末からを取得する予定で、意図的にその端末からプロセスを切断しました。
はい、選択肢が存在する:
- あなたは
- ではなく、Xからあなたkeypressイベントを取得し、そこからの入力を取得したい場合は、 を実行しているグラフィカル環境を持っていると仮定すると、端末からの接続を切断しません。
- 新しい端末を作成し、そこからあなたのキーを取得してください。これはおそらく実際にはxtermを実行することを意味するので、それは自明ではありません。
すでにまたはnohupで正常に動作しますか?
std::ignore()
リターンを行い、そして、あなたはそれについて不平を言っています。 keypressがあなたのために働く唯一のものを待っていますか?
私はApplicationクラスを持っています。コンソールアプリケーションでは、RETURNを待つためにstd :: ignore()を実行しましたが、これはただちに返されるため、不定期の遅延が発生しました。 – user1095108
- 1. nohupが正しく動作しない
- 2. シェルスクリプトがnohupで動作しない
- 3. Wijmoがリリースされたangular2と一緒に動作しない
- 4. window.open()とtarget = "_ blank"がIEで一緒に動作しない
- 5. Tensorflow control_dependenciesがリストと一緒に動作しない
- 6. .matchと.substrが一緒に動作しないjavascriptの問題
- 7. jqueryとmootoolsが一緒に動作しない
- 8. mysql SUMがASと一緒に動作しない
- 9. イメージスライダとjqueryのサイクルプラグインが一緒に動作しない
- 10. jest模擬実装がrequire( '')と一緒に動作しない
- 11. SCons Ignore機能が動作しない
- 12. 親とappendtoは一緒に動作しないのですか?
- 13. ストライプ、角度、およびタイプスクリプトが一緒に動作しない
- 14. std :: hexとstd :: setwが一部の文字列で動作しない
- 15. ラッパーとstd :: async()が動作しない
- 16. シェフとChocolatey v0.9.10.2でignore-package-exit-codesが動作しない
- 17. nohup、open_init_ptyとsudoを一緒に使うことができません
- 18. UpdatePanelと一緒に使用するとJavascriptが動作しない
- 19. :フォーカス:アクティブで一緒に動作していないFirefoxで
- 20. Javascript apply()がブラケット表記でvarと一緒に動作しない
- 21. フォームの動作と一緒にフォームの検証が機能しない
- 22. 名前空間と一緒にハイブXPath UDFが動作しない
- 23. 選択 - 作成とオプションが一緒に機能しない
- 24. Apacheとmod_monoがうまく一緒に動いていない
- 25. Tiles 3.0.1と一緒にSpring 3.2.1が動作しませんか?
- 26. AudioStreamerとAVAudioRecorderが一緒に動作しません
- 27. Python Eclipseコード解析ignoreが動作しないようです
- 28. jetty-maven-pluginが一緒に動作していないjersey-server-1.12
- 29. を選択し、STD :: CINとstd :: getlineのはよく一緒に遊んでいない
- 30. Google jQueryリファレンスはhttpと一緒に動作しなくなりました
ええ、それは戻ってはいけません。私の場合、無限ループにつながります。入力のリダイレクトはlinuxでのみ起こることに注意してください。 – user1095108
これは、/ dev/null _does_からの読み込みです。すぐに0バイト読み込みで戻ります。ああ、POSIXは、nohup _指定されていないファイルからの標準入力をリダイレクトして、関連する端末があるかどうかを指定します。それをすべてのプラットフォームで読むことはおそらく脆弱です。 – Useless
ストリームが終了したときに戻ってはならない場合、どうしたらよいでしょうか?永遠にブロックする? –