버전 17,libpq는 항상 재진입되고 실로 안전합니다. 그러나 한 가지 제한 사항은 두 토토 커뮤니티가 동일한 조작을 시도하지 않는다는 것입니다.pgconn
동시에 물체. 특히 동일한 연결 객체를 통해 다른 토토 커뮤니티에서 동시 명령을 발행 할 수 없습니다.
pgresult
객체는 일반적으로 생성 후 읽기 전용이므로 토토 커뮤니티 사이에서 자유롭게 전달할 수 있습니다. 그러나, 당신이를 사용하는 경우pgresult
-에 설명 된 수정 함수PostgreSQL : 문서 : 개발 : 32.12. 기타 스포츠 토토 스포츠 토토 결과또는PostgreSQL : 문서 : 개발 : 32.14. 스포츠 토토 베트맨 시스템, 동시에 동시 작업을 피하는 것은 귀하에게 달려 있습니다pgresult
,
이전 버전에서libpq컴파일러 옵션에 따라 스레드 지원 유무에 관계없이 컴파일 될 수 있습니다. 이 함수는의 쿼리를 허용합니다.libpq의 토토 커뮤니티-안전 상태 :
PQISTHREADSAFE
#토토 커뮤니티 안전 상태를 반환합니다libpq도서관.
int pqisthreadsafe ();
반환 1 인 경우 1libpq는 토토 커뮤니티-안전하고 그렇지 않은 경우 0입니다. 항상 버전 17 이상에서 1을 반환합니다.
더 이상 사용되지 않은 함수PQREQUESTCANCEL
andpqoidstatus
토토 커뮤니티 안전하지 않으며 멀티 스테이드 프로그램에서 사용해서는 안됩니다.PQREQUESTCANCEL
로 대체 할 수 있습니다pqcancelblocking
. pqoidstatus
로 대체 할 수 있습니다pqoidvalue
.
응용 프로그램 내부에서 Kerberos를 사용하는 경우 (내부libpq), Kerberos 기능이 토토 커뮤니티 안전하지 않기 때문에 Kerberos 통화를 잠그는 것이 필요합니다. 기능 참조PQREGISTESTHREADLOCK
inlibpq사이에 협력 잠금 방법을위한 소스 코드libpq및 귀하의 응용 프로그램.
마찬가지로 사용중인 경우curl응용 프로그램 내부,and당신은 아직하지 않습니다전 세계적으로 libcurl 초기화새 토토 커뮤니티를 시작하기 전에 협력 적으로 잠겨 있어야합니다 (다시PQREGISTESTHREADLOCK
) libcurl을 초기화 할 수있는 모든 코드 주변. 이 제한은 최신 버전의에 대해 해제됩니다.curl스레드 안전 초기화를 지원하기 위해 구축 된; 이러한 빌드는 A 광고로 식별 할 수 있습니다.ThreadSafe
버전 메타 데이터의 기능.