Можно ли выделить память с помощью malloc с nogil в cython? И безопасно ли передавать указатели, если у вас многопоточная программа, работающая с nogil?Является ли Malloc безопасным для использования с ногами?
1
A
ответ
2
GIL на месте, потому что управление памятью CPythons не thread-safe. Как следствие, вы можете использовать nogil
в тех случаях, когда вы не взаимодействуют с объектом Python, то есть с памятью, которую обрабатывает Python.
Это упоминается в документации for releasing the GIL:
кодекса в теле оператора не должны манипулировать объектами Python в любом случае, и не должны ничего, что манипулирует объекты Python без первого повторного приобретения GIL позвонить , Cython в настоящее время не проверяет это.
Таким образом, используя malloc
, передавая указатели и делать что-нибудь еще, что является законным в C
совершенно безопасен, пока не Python объектов не участвует.
Смежные вопросы
- 1. Является ли java.io.BufferedOutputStream безопасным для использования?
- 2. Является ли AesCryptoServiceProvider.GenerateKey безопасным для использования?
- 3. Является ли тип данных size_t безопасным для использования для str.find()?
- 4. Является ли std :: swap() безопасным для использования для объектов?
- 5. Является ли двоеточие безопасным для использования дружественного URL-адреса?
- 6. Является ли Task.Delay безопасным для использования в ASP.NET?
- 7. Является ли `app.use ('/: module')` безопасным шаблоном для использования в Express?
- 8. Является ли Subsonic 3.0 безопасным для использования в производстве?
- 9. Является ли это безопасным?
- 10. Является ли const_cast безопасным?
- 11. Является ли замок() безопасным?
- 12. Является ли следующее безопасным?
- 13. Является ли это безопасным способом использования Async с событиями
- 14. Является ли ядро JupyterHub безопасным для пользователей?
- 15. Является ли java.sql.Connection thread безопасным?
- 16. Является ли System.Runtime.Serialization.DataContractSerializer потоком безопасным?
- 17. Является ли java.nio.file.Files.write (...) безопасным?
- 18. Является ли Component.getGraphicsConfiguration потоком безопасным?
- 19. Является ли AmazonSimpleNotificationServiceClient поточно-безопасным?
- 20. Является ли php: // temp безопасным для производства?
- 21. Является ли HTML5 безопасным для Javascript игр (более безопасным)?
- 22. Является ли utf-8 безопасным для http?
- 23. Является ли FieldByName безопасным для инъекций?
- 24. Является ли мой eval() безопасным?
- 25. Является ли NSPersistentStoreCoordinator Thread безопасным?
- 26. Является ли это безопасным для прокси-сервера
- 27. Является ли PHP завиток для HTTPS безопасным?
- 28. Является ли taskkill безопасным для закрытия процесса?
- 29. Является ли метод getMethod безопасным?
- 30. Является ли LIBSVM потоком безопасным
Конечно. Пока вы освобождаете свою память, когда делаете это, и используйте блокировки, когда это необходимо, вы золотые. –