리눅스 명령 행 도구를 사용하여 논 블로킹 방식으로 /sys/kernel/debug/tracing/trace_pipe
을 읽고 싶습니다. 예를 들어 cat
은 차단되므로 사용할 수 없습니다. 이것은 this과 비슷하지만 파이썬을 사용하고 싶지 않다는 차이점이 있습니다.리눅스에서 비 블로킹 읽기
답변
'비 차단'개념은 명령 줄 도구에는 적용되지 않습니다. 그러나 같은, 호출에 앰퍼샌드를 추가하여 백그라운드에서 cat
의 인스턴스를 실행할 수 있습니다 : 바로 지금 명령 수익을
cat /sys/kernel/debug/tracing/trace_pipe &
, 그리고 때마다 라인이 파일에서 읽을 수있는, 그것은 도착 터미널에 인쇄됩니다 (그리고 타이핑 한 내용은 엉망이됩니다).
파일 자체가 차단되지 않으면 tail -F
을 사용할 수도 있습니다.
이것은 실제로 해결책이지만 매 초'trace_pipe '를 샘플로 보내고 싶습니다. 귀하의 접근 방식은 유스 케이스에 바람직하지 않은 시스템 부하를 증가시킵니다. – Javad
'tail -F'를 시도했습니다. 차단 중입니다. – Javad
'cat'과 동일합니다. 명령을 백그라운드에서 실행하려면 호출 마지막에'&'를 추가하십시오. 정상적인 방법으로 실행하는 것보다 더 많은 시스템 부하를 증가 시켜서는 안됩니다. – user3426575
- 1. Java 소켓 비 블로킹 읽기
- 2. 비 블로킹 SocketChanel에서 정보 읽기
- 3. 시리얼 포트 비동기 읽기 (비 블로킹) + 쓰레드
- 4. 블로킹 및 비 블로킹 할당 Verilog
- 5. 블로킹 연결 후 소켓 비 블로킹 설정하기
- 6. 파이썬 비 블로킹 루프
- 7. NIO 비 블로킹 모드
- 8. Linux 비 블로킹 소켓
- 9. 비 블로킹 할당의 자막
- 10. C에서 비 블로킹 입력
- 11. 비 블로킹 소켓
- 12. pyzmq 비 블로킹 소켓
- 13. Python의 비 블로킹 소켓
- 14. 비 블로킹 동시 수집?
- 15. 비 블로킹 소켓
- 16. 레일 비 블로킹 포스트
- 17. C# 비 블로킹 Socket.Connect()
- 18. PHP 비 블로킹 소켓
- 19. 비 블로킹 Winsockets C++ 이상한 지연
- 20. Java 논 블로킹 읽기
- 21. Cygwin : 블로킹 읽기 차단
- 22. 멀티 쓰레드 프로그램을위한 비 블로킹 읽기 쓰기 루틴
- 23. 파이썬 : 비 블로킹 + 비 무효 프로세스
- 24. 파이어 폭스 비 블로킹 타이머
- 25. 비 블로킹 UI WPF/Silverlight
- 26. PHP 비 블로킹 배타적 잠금
- 27. 비 블로킹 파이썬에서의 서브 프로세스
- 28. 파이썬의 epoll 및 비 블로킹
- 29. 비 블로킹 배치 파일을 실행
- 30. 비 블로킹 소켓에 sendfile() 완료
이 작업을 수행하는 셸 명령에 대해 들어 본 적이 없습니다. – Barmar
Python을 사용하고 싶지 않다면 Perl은 어떨까요? – Barmar
C 언어 솔루션이 있으면 괜찮습니다. 프로그램은 현재'trace_pipe' 안에있는 것을 읽고 리턴해야합니다. 비어 있으면 즉시 처리해야합니다. – Javad