Necesito un mecanismo de comunicación entre hilos rápido para pasar trabajos (void*
) desde TBB tareas a varios trabajadores que están en operaciones de ejecución/bloqueo. Actualmente estoy buscando en usar pipe()
+ libevent
. ¿Existe una alternativa más rápida y más elegante para su uso con Intel Threading Building Blocks?Mecanismo de comunicación entre hilos rápido
Respuesta
Debería poder simplemente usar la memoria estándar con bloqueos de mutex, ya que los hilos comparten el mismo espacio de memoria. La solución pipe() + libevent parece más apropiada para la comunicación entre procesos donde cada proceso tiene un espacio de memoria diferente.
Gracias por su respuesta. Supongo que usaré concurrent_bounded_queue para eso :) – Stan
Echa un vistazo Implementing a Thread-Safe Queue using Condition Variables. Utiliza una cola STL, un mutex y una variable de condición para facilitar la comunicación entre hilos. (No sé si esto es aplicable a Intel Threading Building Blocks, pero como TBB no se menciona en la pregunta/título, supongo que otros terminarán aquí como yo lo hice, buscando un mecanismo de comunicación entre hilos que sea no IPC. Y este artículo podría ayudarlos, al igual que me ayudó.)
Eche un vistazo a la cola gratuita de Boost lock y al hilo. Muy fácil de usar y funciona realmente bien. Lo he usado con hilos que se ejecutan en núcleos separados sondeando la cola para el trabajo.
- 1. Comunicación entre dos hilos
- 2. C# comunicación entre hilos
- 3. Comunicación entre hilos en PySide
- 4. Enhebrado, comunicación entre dos hilos C#
- 5. Comunicación entre hilos. ¿Cómo enviar una señal a otro hilo
- 6. comunicación entre subprocesos en java
- 7. ¿Alfresco Share proporciona algún mecanismo para la comunicación Inter Dashlet?
- 8. Comunicación entre procesos en .NET
- 9. Backbone.js: comunicación entre vistas
- 10. Comunicación entre aplicaciones Rails
- 11. Comunicación iframe entre dominios
- 12. Comunicación entre varios servidores
- 13. comunicación entre programas python
- 14. comunicación entre servlets remotos
- 15. Método más rápido de comunicación con un servicio de Windows
- 16. Comunicación entre C++ y actionscript 3
- 17. Recomendación de comunicación entre procesos
- 18. Comunicación entre componentes en javascript
- 19. ¿cómo se comunican los hilos entre sí?
- 20. Uso de volátiles para la comunicación unidireccional entre hilos en .NET
- 21. ¿Cómo debo manejar la comunicación entre los hilos AI y el lazo principal del juego?
- 22. Android: comunicación entre dos dispositivos
- 23. comunicación android entre dos aplicaciones
- 24. ¿Comunicación entre módulos con Prism?
- 25. Comunicación entre Android y PC
- 26. Comunicación entre dos dispositivos iOS
- 27. Comunicación entre scripts | Tres métodos
- 28. comunicación entre dos aplicaciones flexibles
- 29. comunicación entre procesos en python
- 30. MVP ¿Comunicación entre los presentadores?
Variables globales? – kennytm