안녕하세요 리눅스 C 초보자입니다.
서버 프로그램이 죽는데요. 엉뚱한 데에서 죽습니다.
loop ()
{
select()
recv ( request buffer);
buffer = 여럿 malloc(), free() 복잡한 연산();
send ( buffer) ;
}
이렇게 되어있는데요.
스트레스 테스트를 하려고 client 프로그램을 만들어서
loop (스트레스 수)
send (request buffer)
를 했더니
복잡한 연산 - free() 부분에서 2번째 loop 에서 바로 죽네요
client 프로그램을
loop (스트레스 수)
{
send (request buffer)
recv (buffer)
}
이렇게 하면 안 죽습니다. @_@
디버깅 도중에 SIGPIPE 가 한번 났었는데요. 그것도 한 번 나고는 지금은 안나네요.