2017-04-23 1 views
2

Java 프로그램 (JAR 파일)과 통신하려는 C++ 프로그램을 작성 중입니다.Mac OS에서 C++에서 명명 된 파이프를 구현하는 방법은 무엇입니까?

C++은 파이프에 쓰고 Java 측은 파이프에서 읽을 것입니다. 이미 Windows에서이 기능을 구현했습니다. 이 두 프로그램 사이에서 통신하는 방법에 대해 다른 방법을 권장하지 마십시오. 나는 많은 것을 탐구하고 시험했다.

+0

에 오신 것을 환영합니다 같은 것을 봐! 사이트가 어떻게 작동하는지 여기에서 주제에 관한 질문을 보려면 [둘러보기] (http://stackoverflow.com/tour)를 방문하고 그에 따라 질문을 편집하십시오. 또한보십시오 : [왜 누군가가 나를 도울 수 있습니까? " 실제 질문이 아닙니까?] (http://meta.stackoverflow.com/q/284236) –

+0

[man 2 mkfifo] (https://developer.apple.com/legacy/library/documentation/Darwin/Reference/ManPages/ man2/mkfifo.2.html) –

+0

문제가 해결 되었습니까? – OutOfBound

답변

1

쉬운 방법은 C++ programm에서 std::out에 쓰고 java programm에서 std::in을 읽는 것입니다. mkfifo으로 파이프를 생성 한 다음 cpp programm를 시작하고 그 출력을 파이프로 리디렉션 한 다음 java programm를 시작하고 입력을 파이프로 재 지정하십시오.

다음은 호출 스택 오버플로이

mkfifo myPipe 
./cppProgramm > myPipe& 
java javaProgramm < myPipe& 
관련 문제