인디서버로 데이터를 받을때..Execute를 통해 받는건 알겠는데..
Execute 함수안에서..받은 데이터를 처리하는동안..(디비에 저장, 또는 다른곳으로 재전송등등..)
다른 데이터가 또 오면 어떻게 되는 것인가요?ㅠ.ㅠ
어떠한곳에 저장되어있다가..작업이 끝나면 다시 받는건지..
아님 데이터가 날라가는지?
데이터가 날라간다면..어떻게..해결방안은 없는지?
이 서버가 중계서버래서 이쪽 저쪽거 다 받으서 그렇습니당...ㅠ.ㅠ
도와주셔요...ㅠ.ㅠ
즉 개별 쓰레드로 생각한다면 각 Execute함수 내의 Loop를 돌게하고..
While AThread.Connection.Connected and (not AThread.Terminated) do
Begin
End;
요렇게 하면 핸당 쓰데드가 멈출때까정,, 소켓이 끊어질때까정 돌겁니다..
그런다음 로컬변수를 하나써서,,, 메모리나 디스크에 저장해놓게 되면..
물론 이름을 잘쓰셔야죠... 로컬변수는 상관없을테고 파일스트림같은경우
에는 선별해서쓰시고....
요는 개별쓰레드이므로 겹치는것에 상관은 없다는거죠.. 단 공유자원에
접근하는경우 사용자가 잘 처리를 해주어야합니다. CriticalSection을 쓰
시던 뭘 쓰시던 잘 못쓰면 안쓰는것만 못하므로....
개인적인 생각으로는 임계섹션은 가능하면 안쓰는게 안정적이겠지만..
쓸수밖에 없는경우는 학실히(?) 쓰세엽...
고럼..