C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[38687] Re:화상채팅시 파일전송에 관해서요
김윤동.제라툴 [zeratul] 1225 읽음    2005-01-08 09:54
이성제 님이 쓰신 글 :
: 제라툴님께서 가르쳐 주셨는데요
:
: 처음 듣는 말이 있어서 다시 질문 합니다 ㅎ
:
: stream을 이용해서 전송할려고 하는데
:
: Socket에 전송하는 메소드중엔 Function을 대부분 가지고 있다고 하는데요;;
:
: 사용법이 어떻게 되는지 좀 가르쳐 주세요 ㅎ
:
: 그리고 무슨 큐를 이용 하라는데
:
: 큐가 쌓이는것을 막기위해 쓰래드를 사용 하라는데요
:
: 큐의 사용법도 좀 가르쳐 주세요 ㅎ
:
: stream 도 처음 접하는거고 '큐' 이건 아예 처음 듣는거거든요 ㅎ
:
: 대충의 사용법을 좀 가르쳐 주세요 ㅎ
:
: 그럼 수고 하세요~

소켓 컴퍼넌트 .. 간단한 예로

TClientSocket 의 경우는

Socket Property 즉 TClientWinSocket  클래스에 SendStream 이라는 Functions을 가지고 있습니다.

이런식으로 Stream 관련 함수들을 가지고 있죠

전송된 영상을 받으실때는 영상이라는것 자체의 크기가 크기 때문에

네트웍에서 한번에 Buffer로 받을 수 있는 양이 한정되어 있죠 ..

즉 네트웍 Queue에 사이즈 만큼으로요 .. 그렇기 때문에 데이터를 전송 받자 마자 그 데이터에 대한 작업을 하게 되면

그 작업 시간동안 네트웍 Queue에 데이터가 계속 쌓여서 데이터 가 Lose 되는 경우가 발생할 수있기 때문에.

네트웍 Queue에 쌓여 있는 데이트를 빼내 주는 작업을 하는 Thread를 만들어서 .. Data를 우리 프로그램 상의 Buffer로

옮겨 작업하는것이 좀더 효율 적입니다.

데이터 전송후 해 주어야 하는 작업이 많을 경우 즉 .. 데이트를 받아서 헤더 분석하고 영상 처리해 주고

만약 압축 영상이다 보면 디코딩 작업도 해주어야하는데 이런 작업을 하는 동안에 날아 들어오는

데이터들을 안정적으로 저장하기 위해서 .. Thread Queue를 사용하는 것이 효율 적이라는 얘기 입니다.

조금 도움이 되셨으면 합니다.

From Zeratul

+ -

관련 글 리스트
38686 화상채팅시 파일전송에 관해서요 이성제 836 2005/01/08
38687     Re:화상채팅시 파일전송에 관해서요 김윤동.제라툴 1225 2005/01/08
38692         Re:Re:화상채팅시 파일전송에 관해서요 이성제 970 2005/01/08
38714             Re:Re:Re:화상채팅시 파일전송에 관해서요 김윤동.제라툴 933 2005/01/11
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.