2010-08-03 9 views

답변

1

장점 중 하나는 그들이에서 스트림 기능을 제공하는 우리의 새로운 전문 스트림을 구축 할 필요가 없습니다.

예 : 우리는 우리의 응용 프로그램에 대한 간단한 로깅 시설을 만들기 위해 파이프를 사용할 수 있습니다. 우리는 인쇄물 인쇄기를 통해 로깅 시설에 메시지를 보낼 수 있으며 최종 목적지로 메시지를 보내기 전에 처리 또는 버퍼링이 필요합니다.

자세한 내용은 참조 : 자바 IO에서 http://docstore.mik.ua/orelly/java/exp/ch08_01.htm

2

일반적으로 두 개의 서로 다른 스레드가 동시에 읽고 쓰는 데 사용됩니다.

(그들은 디자인은 매우 나쁘다. 당신은 파이프를 방해하지 않고 한 쪽 끝에서 스레드를 전환하고 해당 스레드 종료를 가질 수 없습니다.) 파이프 스트림을 사용

3

파이프가 통신하기 위해 동일한 JVM에서 실행되는 두 개의 스레드 기능을 제공합니다. 그러한 파이프는 데이터의 공통 소스 또는 대상입니다.

장기 실행 스레드가 두 개인 경우 하나는 데이터를 생성하도록 설정되고 다른 하나는 데이터를 소비하는 경우에 유용합니다.

2

다른 답변에서 말한 것처럼, 스레드간에 사용하도록 설계되었습니다. 실제로는 피하는 것이 가장 좋습니다. 13 년 만에 한 번 사용해 본 적이 있었으면 좋았을 텐데.

+0

자세히 설명해 주시겠습니까? 무엇이 잘못 되었습니까? –

+1

그것은 단지 무시 무시한 해결책이었습니다. 13 년 전 이었기 때문에 세부 사항을 기억할 수는 없지만 일종의 대기열을 사용해야했습니다. 사실 나는 결국 내가 한 것 같아. – EJP

+0

@downvoter 당신의 동기를주세요. 나는이 경험을했다. 나는 16 년 동안 자바를 사용했다. 그리고 나는 정확하게 초보자가 아니었다. 그것은 매우 고려 된 판단입니다. – EJP

3

BlockingQueue 또는 유사한 컬렉션이 스레드 안전하고 강력하며 확장 성이 뛰어납니다.

+0

가능한 빨리 시도해 보겠습니다. 감사합니다. –