버전 17부터,libpq항상 재진입이 가능하고 토토 커뮤니티로부터 안전합니다. 그러나 한 가지 제한 사항은 두 토토 커뮤니티가 동일한 것을 조작하려고 시도하지 않는다는 것입니다.PGconn동시에 객체를 생성합니다. 특히, 동일한 연결 개체를 통해 서로 다른 토토 커뮤니티에서 동시 명령을 실행할 수 없습니다. (동시 명령을 실행해야 하는 경우 다중 연결을 사용하십시오.)
PGresult객체는 일반적으로 생성 후 읽기 전용이므로 스레드 간에 자유롭게 전달될 수 있습니다. 그러나 다음 중 하나를 사용하는 경우PGresult-설명된 함수 수정PostgreSQL : 문서 : 개발 : 32.12. 기타 스포츠 토토 스포츠 토토 결과또는PostgreSQL : 문서 : 개발 : 32.14. 스포츠 토토 베트맨 시스템, 동일한 작업에 대한 동시 작업을 피하는 것은 귀하에게 달려 있습니다.PGresult역시요.
이전 버전에서는,libpq컴파일러 옵션에 따라 스레드 지원 여부에 관계없이 컴파일될 수 있습니다. 이 함수를 사용하면 다음을 쿼리할 수 있습니다.libpq의 토토 커뮤니티 안전 상태:
PQistreadsafe #토토 커뮤니티 안전 상태를 반환합니다.libpq도서관.
int PQistreadsafe();
다음인 경우 1을 반환합니다.libpq토토 커뮤니티 안전하고 그렇지 않으면 0입니다. 버전 17 이상에서는 항상 1을 반환합니다.
지원 중단된 기능PQ요청취소그리고PQoid상태토토 커뮤니티로부터 안전하지 않으며 다중 토토 커뮤니티 프로그램에서 사용해서는 안 됩니다.PQ요청취소다음으로 대체 가능PQcancelBlocking. PQoid상태다음으로 대체 가능PQoid값.
애플리케이션 내에서 (내부 외에) Kerberos를 사용하는 경우libpq), Kerberos 함수는 토토 커뮤니티로부터 안전하지 않기 때문에 Kerberos 호출에 대해 잠금을 수행해야 합니다. 기능 보기PQregisterThreadLock에서libpq사이에 협력적 잠금을 수행하는 방법에 대한 소스 코드libpq그리고 당신의 지원서.
마찬가지로 다음을 사용하는 경우컬애플리케이션 내부에서,그리고아직은 아닙니다libcurl을 전역적으로 초기화새 스레드를 시작하기 전에 협력적으로 잠가야 합니다(다시 다음을 통해PQregisterThreadLock) libcurl을 초기화할 수 있는 코드 주위에 있습니다. 이 제한은 최신 버전에서는 해제됩니다.컬스레드 안전 초기화를 지원하도록 구축되었습니다. 해당 빌드는 다음 광고로 식별될 수 있습니다.토토 커뮤니티세이프버전 메타데이터에 있는 기능입니다.