Q&A

  • 소켓 프로그램이 갑자기 죽어버립니다.
고수님들의 도움이 꼭 필요합니다.

조금이라도 해주실 말씀이 있으시면 답변해 주세요..!



TServerSocket으로 호스트 프로그램 만들어 사용하고 있는데

몇 시간이 지나면 하루 1~3번 정도 무작위로 다운됩니다.

그런데 신기하게도 아무런 메시지도 없이 다운되요..!

델파이로 디버그 걸어 실행시키면 갑자기 델파이 까지

죽어 버립니다.

메모리 할당도 거의 하지 않고 (10M 미만) CPU 점유율도 5% 이내거든요.

정말 미치겠습니다..!

그냥 팍 죽어버립니다.

오류 메시지라도 있었으면 좋겠구만....

처음에는 DB문제라 생각했는데요..! 계속 테스트하다 보니

그건 아닌거 같구요..!

혹시 저처럼 갑자기 아무 오류 없이 다운 당하셨던 분이 계시면

꼭 답변해 주세요..

굳이 해결 방법이 아니더라도 한말씀들 부탁합니다.

이것이 델파이의 한계 인지도 모르겠군요..!

아참! 그리고 델파이 6으로 컴파일 해보기도 했는데요..!

그래도 마찬가지입니다..!



참고로 TMemoryStram을 이용해서 사용자에 들어온 메시지를

담아두었다가 순차적으로 처리하고 있고요..

SQL 2000에 데이터를 이용하고 있고요..!

이상 입니다..!

꼭 고수님들 답변 부탁합니다.



5  COMMENTS
  • Profile
    델피언 2001.08.02 19:14
    아무런 이유없이 프로그램이 깜쪽같이 사라져버리니 정말 답답하시죠..



    이건 제 경험에 의한건데요...



    가능성은 Thread module입니다.



    Thread module에서 Vcl에 접근할 때 Sync를 사용하지 않으면 그런현상이 발생하죠...



    이건 델파이 원문에도 나와 있을겁니다.



    이부분을 찾느라 저도 고생 좀 했죠..



    만약 아니라면 님께서 해결방법을 찾아설 답변 좀 올려주시길...^^;



    그럼....



    궁금이 wrote:

    > 고수님들의 도움이 꼭 필요합니다.

    > 조금이라도 해주실 말씀이 있으시면 답변해 주세요..!

    >

    > TServerSocket으로 호스트 프로그램 만들어 사용하고 있는데

    > 몇 시간이 지나면 하루 1~3번 정도 무작위로 다운됩니다.

    > 그런데 신기하게도 아무런 메시지도 없이 다운되요..!

    > 델파이로 디버그 걸어 실행시키면 갑자기 델파이 까지

    > 죽어 버립니다.

    > 메모리 할당도 거의 하지 않고 (10M 미만) CPU 점유율도 5% 이내거든요.

    > 정말 미치겠습니다..!

    > 그냥 팍 죽어버립니다.

    > 오류 메시지라도 있었으면 좋겠구만....

    > 처음에는 DB문제라 생각했는데요..! 계속 테스트하다 보니

    > 그건 아닌거 같구요..!

    > 혹시 저처럼 갑자기 아무 오류 없이 다운 당하셨던 분이 계시면

    > 꼭 답변해 주세요..

    > 굳이 해결 방법이 아니더라도 한말씀들 부탁합니다.

    > 이것이 델파이의 한계 인지도 모르겠군요..!

    > 아참! 그리고 델파이 6으로 컴파일 해보기도 했는데요..!

    > 그래도 마찬가지입니다..!

    >

    > 참고로 TMemoryStram을 이용해서 사용자에 들어온 메시지를

    > 담아두었다가 순차적으로 처리하고 있고요..

    > SQL 2000에 데이터를 이용하고 있고요..!

    > 이상 입니다..!

    > 꼭 고수님들 답변 부탁합니다.

    >

  • Profile
    이성윤 2001.08.06 12:45
    혹시 소켓의 read event나 write event 안에

    application.processmessage 함수를 실행하셨나요?

    만약 들어있다면 event 재진입이 되므로 그런 현상이 벌어질 가능성이 높습니다.

    있다면,빼고 해보세요.

    그리고,잘되면 연락 좀 부탁드립니다.

    꼭이요 .......



  • Profile
    궁금이 2001.08.02 20:20
    네!

    그렇군요..!

    하지만 전 Thread 를 사용하지 않았는데요..!

    대신 Timer를 이용하였죠..!

    델파이코리아에서 누가 답변한 내용중

    Timer를 쓰면 무슨 문제가 생긴다고 하는것

    같은데 자세한 설명은 없군요..!

    Timer를 쓰더라도 Thread와 바슷한 오류가 생길까요..?



    델피언 wrote:

    > 아무런 이유없이 프로그램이 깜쪽같이 사라져버리니 정말 답답하시죠..

    >

    > 이건 제 경험에 의한건데요...

    >

    > 가능성은 Thread module입니다.

    >

    > Thread module에서 Vcl에 접근할 때 Sync를 사용하지 않으면 그런현상이 발생하죠...

    >

    > 이건 델파이 원문에도 나와 있을겁니다.

    >

    > 이부분을 찾느라 저도 고생 좀 했죠..

    >

    > 만약 아니라면 님께서 해결방법을 찾아설 답변 좀 올려주시길...^^;

    >

    > 그럼....

    >

    > 궁금이 wrote:

    > > 고수님들의 도움이 꼭 필요합니다.

    > > 조금이라도 해주실 말씀이 있으시면 답변해 주세요..!

    > >

    > > TServerSocket으로 호스트 프로그램 만들어 사용하고 있는데

    > > 몇 시간이 지나면 하루 1~3번 정도 무작위로 다운됩니다.

    > > 그런데 신기하게도 아무런 메시지도 없이 다운되요..!

    > > 델파이로 디버그 걸어 실행시키면 갑자기 델파이 까지

    > > 죽어 버립니다.

    > > 메모리 할당도 거의 하지 않고 (10M 미만) CPU 점유율도 5% 이내거든요.

    > > 정말 미치겠습니다..!

    > > 그냥 팍 죽어버립니다.

    > > 오류 메시지라도 있었으면 좋겠구만....

    > > 처음에는 DB문제라 생각했는데요..! 계속 테스트하다 보니

    > > 그건 아닌거 같구요..!

    > > 혹시 저처럼 갑자기 아무 오류 없이 다운 당하셨던 분이 계시면

    > > 꼭 답변해 주세요..

    > > 굳이 해결 방법이 아니더라도 한말씀들 부탁합니다.

    > > 이것이 델파이의 한계 인지도 모르겠군요..!

    > > 아참! 그리고 델파이 6으로 컴파일 해보기도 했는데요..!

    > > 그래도 마찬가지입니다..!

    > >

    > > 참고로 TMemoryStram을 이용해서 사용자에 들어온 메시지를

    > > 담아두었다가 순차적으로 처리하고 있고요..

    > > SQL 2000에 데이터를 이용하고 있고요..!

    > > 이상 입니다..!

    > > 꼭 고수님들 답변 부탁합니다.

    > >

  • Profile
    김지엽 2001.08.02 18:00
    올리신 글만 봐서는 어떤 증상인지 정확히 알 수가 없지만요..

    델파이의 소켓 클래스 자체에 심각한 버그가 있는 것으로 압니다. 어쩌면 그것과 연관있는지도 모르겠네요.



    한가지 권해드리고 싶은 것은, ServerSocket / ClientSocket 보다는 PowerSock을 사용해 보시는 편이 어떤가 하는겁니다.

  • Profile
    궁금이 2001.08.02 18:37
    김지엽 wrote:

    > 올리신 글만 봐서는 어떤 증상인지 정확히 알 수가 없지만요..

    > 델파이의 소켓 클래스 자체에 심각한 버그가 있는 것으로 압니다. 어쩌면 그것과 연관있는지도 모르겠네요.

    >

    > 한가지 권해드리고 싶은 것은, ServerSocket / ClientSocket 보다는 PowerSock을 사용해 보시는 편이 어떤가 하는겁니다.



    그럼! 소켓 클래스 자체에 심각한 버그는 무었인지 아세요..?

    아시면 답변 부탁합니다..!