멀티 스레딩에 대한 this 문서에 따르면 라이브러리를 동시에 사용하기 전에 xmlInitParser()
을 호출해야합니다. 여기에 문제가 있습니다. libxml2를 사용하여 라이브러리 (실행 파일이 아님)를 코딩했고 동시성을 보장해야합니다. 그래서 우리 라이브러리의 init 함수에서 init 함수를 호출하기로 결정했습니다. 그러나 the document 함수는 재진입 성이 없다고 말합니다. 따라서 다른 라이브러리 나 내 라이브러리를 연결하는 프로그램이 미리 함수를 호출하면 문제가 될 수 있습니다.libxml2가 초기화되었는지 확인하는 방법
파서 (또는 libxml2)가 초기화되어야하는지 확인하는 기능이나 방법을 찾을 수 없습니다. 어떻게해야합니까? 관계없이 함수를 호출하고 최선의 결과를 얻으시겠습니까? 결국 함수가 재진입 적이라는 것을 테스트 할 것입니다.하지만이 함수를 게시 한 후에는 실제로 계산되지 않습니다. 요약에 대한 명확한
:
- 가
xmlInitParser()
실제로 재진입? - libxml2가 초기화되었는지 확인하는 방법은 무엇입니까?
- (OR) libxml2를 다른 소프트웨어가 동시에 사용할 수 있다는 전제하에 안전하게 사용하는 방법.
메일 링리스트가 활성화되지 않은 것처럼 보였으므로 여기에서 요청합니다. –
스레드가 생성되기 전에 메인 루틴에서 호출 할 수 있습니까? 그게 내가 libxml2를 사용할 때했던 일이다. – bruceg
Nitpick : 재진입 성이 아니더라도 계속해서 여러 번 호출 될 수 있습니다. – user45891