#include "PThread_TimeOut.h"

...

status = pthread_create(&hThread,
                               NULL,
          &CTCPComm::ValidateData_Server,
                               &pthread_args);
                               
pthread_join_timeout(hThread, 2000) ;

pthread_detach(hThread);
...

AND


int listen(SOCKET s,  int backlog);

현 시스템의 backlog 최대값 설정값 알아내는 방법은


no -a 명령어 입력한후 디스플레이된 값중 somaxconn이 최대값이다.

...
sodebug_env = 0
somaxconn = 1024
strctlsz = 1024
....

AND


int listen(SOCKET s,  int backlog);

listen 함수의 두번째 인자 backlog는 시작할 수 있는 진행중인 연결의 최대 개수이다
이는 주어진 포트에 한번에 생성될 수 있는 최대 연결 개수를 나타내는 것이 아니라 애풀리케이션이 받아들이기를 기다리는 대기열에 들어갈 수 있는 연결 혹은 부분적인 연결의 최대 개수를 뜻한다.
전통적으로 backlog 매개변수는 5보다 크게 설정할 수 없지만 웹 서버와 같은 트래픽이 많은 애플리케이션을 지원하기 위해서 최근에는 최대값이 커졌다.
얼마나 큰가는 시스템 설정에 달려 있으며 주어진 컴퓨터에 적절한 값을 찾기 위해서는 시스템 관련문서들을 참조해야 한다.
만약 사용자가 매개변수를 최대값보다 크게 지정하면 사용자에게 통보없이 최대값으로 다시 조절된다.
 
AND


void CFileWriter::FileLogWrite()
{
    int cur_char;
    FILE *out_file;

    out_file = fopen(ACCESS_LOG_FILE, "a");
    //w: 화일 무조건 생성하고 쓴다 a: 화일 있으면 append 없으면 Create 하고 append 
    if (out_file == NULL) {
        return;
       
    }
 
    fprintf (out_file, "============= test ==================\n");
    fprintf (out_file, "%s\n",zzzz);
    fprintf (out_file, "================================================\n");
    fclose(out_file);
    return;

}


AND





마소 2004.1월 참조 (마소 2003.12~2004.03월 까지 OpenSSL 관련 기사가 연재되었음)
AND