Tôi đang viết một phần mở rộng C, cung cấp một giao diện giữa Ruby và một thư viện I/O không đồng bộ. Khi chạy các bài kiểm tra qua mã của tôi, tôi thường xuyên nhận được lỗi bao gồm (nhưng không giới hạn):Làm cách nào để tránh vi phạm nhiều luồng trong tiện ích mở rộng Ruby?
[BUG] cross-thread violation in rb_thread_schedule()
Asynchronous IO nghĩa mở rộng C tôi sẽ cần phải cung cấp các thông điệp để ruby từ nhiều chủ đề (không phải là chủ đề thông dịch viên chính) . Làm cách nào để tránh các vi phạm an toàn chủ đề này trong quá trình xử lý?
Ruby 1.8.x hoặc 1.9.x? – llasram
Sự quan tâm của tôi là 1,8, nhưng 1,9 cũng có liên quan. –