Busco algo análogo a CreateEvent(), SetEvent() y WaitForMultipleObjects() desde el mundo de Win32.¿Hay un C++ multiplataforma ", llamado evento como el "CreateEvent()" en Win32?
Específicamente esto tiene que ser accesible en todos los procesos en la misma máquina.
Ya estamos usando Poco para algunas cosas de plataforma cruzada, pero no veo que el Poco :: Event sea lo que quiero. Tal vez me falta algo.
EDITAR:
T o explicar lo que quiero hacer:
Quiero que el proceso B sepa cuando algo sucede en el proceso A. Esto es trivial en win32 - Cada proceso/hilo llama a CreateEvent() con un nombre para el evento. El proceso B llama a waitForXObject() y Process A llama a SetEvent() cuando sucede algo. B es señalado.
De nuevo, esto es trivial en win32, pero cómo hacerlo multiplataforma.
¿Puedes explicarme más sobre lo que intentas hacer? No hay ningún equivalente en C++, existen bibliotecas que podrían funcionar para usted. Me parece que lo que podría necesitar es algún middleware para poner sus cosas (por supuesto, estoy adivinando) –
@Romain - Agregué detalles. Sé que no hay primitivos de C++. Lo que estoy buscando son maneras de hacerlo EN C++, no un cambio de idioma. – Tim
Mira mi respuesta que quieres boost :: named_condition, no hay una forma incorporada en C++ para hacer esto sin una biblioteca como boost. –