Tôi đang thử nghiệm một DLL C++ đa luồng. DLL này được cho là an toàn thread. Tôi có nó bọc với boost.python, và tôi muốn tạo nhiều chủ đề python để thực thi DLL thông qua trình bao bọc boost.python. Tôi thực sự đang đang cố gắng để gây ra vấn đề về luồng. Những gì tôi không thể tìm thấy tài liệu tốt là liệu trình thông dịch python có hỗ trợ hai luồng của nó (trên các lõi khác nhau), đồng thời gọi vào một mô-đun đã nhập hay không và liệu GIL có cần chăm sóc hay không Tôi không muốn thêm bất kỳ sự an toàn nào trên những gì mà DLL được cho là cung cấp.Đa luồng thực với boost.python
Bất cứ ai có thể mô tả hoặc giới thiệu tôi mô tả về các mô-đun DLL gọi python từ nhiều luồng và cách GIL được sử dụng trong trường hợp này?
Dường như bạn sẽ phải tự mình giải phóng GIL, nếu không bạn sẽ không có nhiều hơn một chuỗi chạy cùng một lúc. Xem http://stackoverflow.com/questions/1576737/releasing-python-gil-in-c-code – lvella
Đây có phải là bản sao của http://stackoverflow.com/questions/8009613/ không? –
Một câu hỏi phụ: nếu tôi không phát hành GIL, và mã C++ được gọi là từ Python tạo ra một chủ đề, có thể thread này gọi mã python một cách an toàn hay không. Tôi cho rằng không phải vì nó sẽ giải thích một vụ tai nạn tôi nhận được ... – MatthieuW