Q&A

  • socket프로그래밍 중에 발생한 문제...
Client에서 SendText(Sql문장)을 Server로 보내면
Server에서는 Socket.ReceiveText를 받아서
다시 접속되어있는 모든 Client에
For 문을 돌면서 SendText(Sql문장) 하면 다시 Client에서
Sql문장을 실행하게 하면서 실시간으로 자료가 바뀌게 하려고 합니다.
문제는 10번중 3번에서 4번 정도는 Sql문장이 오류라고 합니다.
물론 Sql문장의 오류는 전혀 아닙니다.(10번중 6, 7번중 실행되므로)
확인해 보니까 Sql문장이 가끔가다가 일부만 전송이 되는것 같은데
이유가 있나요, 고수님들 좀 가르쳐 주세요.
참고로 전 ServerSocket, ClientSocket를 사용하고 Delphi 5.0입니다.

1  COMMENTS
  • Profile
    김수경 2002.07.10 19:03
    socket 관련 Buffer가 꽉 차서 그런 현상이 생긴 것 같습니다.
    Read Event가 발생하면 바로 읽어 내부(Application) Buffer에
    보관해 둔후 Timer 또는 Thread에서 내부 Buffer(수신된 SQL문)에
    대한 처리를 해 주시면 좋을 것 같습니다.
    그 이유는 SQL 명령 실행은 느린 반면 Socket 자료 전송은
    빠르게 처리 될 수 있기 때문입니다.
    글구 DBMS관련 문의는 사용 DBMS가 무엇인가(지금의 경우는 별로 상관 업지만)가
    중요함로 다음 질의시엔 꼭 사용 DBMS에 대한 기술이 있으면 좀 더
    명확한 답변을 기다릴 수 있을 것 같네여~

    참고하세여~

    즐거운하루!!!

    • 서기원
      2002.07.10 20:53
      pas파일 자체속성에 Read only로 설정되어 있기 때문입니다. 아마도 CD-Rom에 있던 샘플을 열어보신 것 같...
    • 신연근
      2002.07.10 22:36
    • 홍성락
      2002.07.10 21:29
    • KDDG_ZZOM
      2002.07.10 20:18
    • ㄴ ㅏ ㅁ ㅑ
      2002.07.10 20:34
    • KDDG_ZZOM
      2002.07.10 20:37
    • ㄴ ㅏ ㅁ ㅑ
      2002.07.10 20:59
    • KDDG_ZZOM
      2002.07.10 21:15
    • • • •
    • 김세형
    • 2002.07.10 20:15
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 이원상
    • 2002.07.10 20:10
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2002.07.10 23:33
      안녕하세요. 최용일입니다. DLL 새로 만들면 여러줄에 걸친 주석있잖아요. 거기에 해답이 있는데... ...
    • 이정관
      2002.07.10 20:01
      ShellExecute()를 사용하기 위해서는 interface 절의 uses절안에 ShellAPI을 포함시켜주세요... interf...
    • 박진감
    • 2002.07.10 19:51
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 홍성락
      2002.07.10 21:08
      hsr///////////////////////////////////////////////////////////// 혹시? ComboBox1.ItemIndex := Comb...
    • 이정관
      2002.07.10 19:43
      DLL파일을 사용하고 있는 프로그램이 실행되어 있어서 그런거 아닌가요. 정상적인 경우라면 컴파일하면 소...
    • 호기심
    • 2002.07.10 19:24
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이정관
      2002.07.10 19:47
      소스한번 올려주세요...말로만은 잘 모르겠네요... 혹 반올림 문제가 아닌지 모르겠네요.
    • 호기심
      2002.07.10 21:01
                      &nbs...
    • 원혁상
    • 2002.07.10 19:12
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2002.07.10 19:51
      안녕하세요. 최용일입니다. 음~ 질문만으론 정확한 상황을 잘 모르겠네요... 답변이 제대로 될른지... ...
    • 원혁상
      2002.07.10 19:57
      감사합니다..... 올라오는군여... 제가 델파이는 첨이라서 많이 헤메구 있습니다. 정말 감사 합니다. ...
    • 이정택
    • 2002.07.10 04:31
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김수경
      2002.07.10 19:03
      socket 관련 Buffer가 꽉 차서 그런 현상이 생긴 것 같습니다. Read Event가 발생하면 바로 읽어 내부(App...
    • 오정민
    • 2002.07.10 03:47
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 윤수아
    • 2002.07.10 02:39
    • 2 COMMENTS
    • /
    • 0 LIKES
    • YoungMan
      2002.07.10 03:28
      ㅡㅡ; 활동많이 하셔서 레벨이 올라가면 얻는 권한인듯합니다^^; 활동 많이 하셔서 이름 예쁘게하세요^^
    • 염상철
      2002.07.10 10:57
      원래 제로보드에있는기능인데~~이사이트 주인께서.. 활동 많이 하는 사람에게~~이익을 주고자.`~ 레벨로 ...
    • 이원상
    • 2002.07.10 02:30
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2002.07.10 19:43
      안녕하세요. 최용일입니다. 동적이냐 정적이냐는 DLL이 메모리에 올라가는 시점에 따라서 구별해요... ...
    • 염상철
      2002.07.10 10:32
      이사이트가..가장...알기 쉽게 설명 되있어여.. 딴데 찾을 생각 하지 마시고.. 이사이트에서..열씨미...
    • 장태원
      2002.07.10 02:11
      If 문쓰시면 되는데..ㅡㅡ; 왜 문제가 될지 그게 궁금하군요. If TE_Address1.Text <>'' Then ...
    • 최용일
      2002.07.10 02:06
      안녕하세요. 최용일입니다ㅣ string형쓰세요. 2GByte까지 데이터 저장 가능합니다... ^^ 항상 즐코하...
    • 박동호
    • 2002.07.10 01:44
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2002.07.10 01:52
      안녕하세요. 최용일입니다. 파라매터를 이용해보세요... Query1.SQL.Add(' insert into office(name,...
    • 박동호
      2002.07.10 02:19
      고맙습니다.
    • 장태원
      2002.07.10 00:40
      With Query1 Do Begin Close; Sql.Clear; Sql.Add(' INSERT INTO ABCTABLE(AATEXT) VALUES(:AATE...
    • 김기현
      2002.07.10 02:15
      근데 퀵리포트에서 보면..이상한 문자가 들어가 있는데... 그걸없에고 불러오고 싶은데 그건어케하는건...
    • 별볼일없는
      2002.07.10 01:26
      음냐.. 그냥 지나가다... 데이터 베이스가 그냥 스트링이라면 모르겠지만 메모에서 내용을 받아오면 그냥...
    • 짱아
    • 2002.07.09 23:03
    • 6 COMMENTS
    • /
    • 0 LIKES
    • 조범준
      2002.07.10 12:14
      function RenameFile(const OldName, NewName: string): Boolean; Description RenameFile attempt...
    • 최석기
      2002.07.10 00:58
      뭐 방법이야 여러가지 있겠지만 재귀호출을 이용한 방법입니다. 참고하세요. //PreFix는 최초 시작 ...
    • 짱아
      2002.07.10 01:14
      저겨... 좀더 구체적으로 말씀해 주시면 안되염?? 이해가 안되염.. ㅜ.ㅡ    xsfname := 'C:...
    • 최석기
      2002.07.10 01:26
      이런 식으로 제가 만들어 드린 함수를 태우시면 자동으로 변경되는 파일 이름을 얻으실 수 있습니다. xs...
    • 짱아
      2002.07.10 02:48
      아래와 같이 했는데...  I/O error 32 에러가 나염.. procedure TfrmMnuA1.BtnsaveClick(Sen...
    • 장태원
      2002.07.10 00:43
      loop 를 돌리셔서 파일명을 먼저 변수로 처리하여 파일이 있는지 없는지를 먼저 비교합니다. 없으...