이 문서는 지원되지 않는 버전의 토토 커뮤니티을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다메이저 토토 사이트 : 문서 : 17 : 32.20. 스레드 프로그램의 행동버전 또는 위에 나열된 다른 지원되는 버전 중 하나입니다.

31.19. 스레드 프로그램의 행동

libpq는 재진입합니다 기본적으로 스레드 안전. 특수 컴파일러를 사용해야 할 수도 있습니다 명령 줄 옵션 응용 프로그램 코드를 컴파일 할 때. 나타내다 구축 방법에 대한 정보를위한 시스템 문서에 스레드 가능 응용 프로그램 또는src/makefile.globalforpthread_cflagsandpthread_libs. 이 함수는의 쿼리를 허용합니다.libpq의 스레드-안전 상태 :

PQISTHREADSAFE

| 스레드 안전 상태를 반환합니다libpq도서관.

int pqisthreadsafe ();

반환 1 인 경우 1libpqIS 스레드-안전하고 0이 아닌 경우 0.

하나의 스레드 제한은 두 스레드가 시도하지 않는다는 것입니다. 동일한 조작pgconn개체 at 동시. 특히 동시 명령을 발행 할 수 없습니다 다른 스레드에서 동일한 연결 객체를 통해. (만약 당신이 동시 명령을 실행하고 여러 연결을 사용해야합니다.)

pgresult객체는 일반적으로입니다 창조 후 읽기 전용으로 자유롭게 전달할 수 있습니다. 스레드 사이. 그러나, 당신이를 사용하는 경우pgresult--수정 함수에 설명 된토토 핫 PostgreSQL : 문서 : 9.3 : 기타 함수또는섹션 31.13, 피해야합니다 동시에 동시 작업pgresult,

더 이상 사용되지 않은 함수pqRequestCancelandpqoidstatus스레드 안전하지 않아서는 안됩니다 멀티 스레드 프로그램에 사용됩니다.PQREQUESTCANCEL로 대체 할 수 있습니다pqcancel. pqoidstatus로 대체 할 수 있습니다pqoidvalue.

응용 프로그램 내에서 Kerberos를 사용하는 경우 (또한 내부libpq), 당신은 필요합니다 Kerberos 기능이 아니기 때문에 Kerberos 통화를 잠그십시오. 스레드 안전. 기능 참조PQREGISTESTHREADLOCKinlibpq협동 조합을위한 소스 코드libpq그리고 당신의 애플리케이션.

스레드 애플리케이션에 문제가 발생하면 실행하십시오 프로그램SRC/Tools/Thread플랫폼에는 스레드-미사일 기능이 있습니다. 이 프로그램은구성그러나 이진 분포 용 라이브러리는 바이너리.