Multi-Task to Multi-Task event ...

debugasm wrote on Thursday, May 01, 2014:

Hi,

I need a little input on how to accomplish this. My project is structured as follows :

Input A - Thread Input A -----+
Input B - Thread Input B -----+
Input C - Thread Input C -----±---- Thread Output A - Output A
Input D - Thread Input D -----±---- Thread Output B - Output B
Input E - Thread Input E -----±---- Thread Output C - Output C
Input F - Thread Input F -----±---- Thread Output D - Output D
Input G - Thread Input G -----+
Input H - Thread Input H -----+

Thread Input X running the same code on different input.
Thread Output X running the same code on different output.

I have to be able to send from one Thread Input X an event / message or another
to all Thread Output X (also not in the same instant).

In my first approach I used a message queue. In Thread Output X I have create 4
message queue on which the Thread Input X write (Thread Output X only read).

On event in Thread Input X I write the same message on all 4 message queue, but
it does not seem like the ideal solution.

What technique can I use ? Event Group ?

Thanks for any suggestions.

debugasm

davedoors wrote on Thursday, May 01, 2014:

How detailed is the event? If it can be conveyed as a single bit then an event group would let all the tasks block on the same bits in the same event group with each bit having a different meaning.

debugasm wrote on Thursday, May 01, 2014:

How detailed is the event?

Yes, a single bit is sufficient.

Then with an EventGroup of 4-bit size I should be able to simplify things.

I create one EventGroup with 4-bit size, each Thread Input X writes the corresponding bit to wake up Thread Output X. On Thread Output X waiting an EventGroup on single bit.

It should go, I try.

Thanks very much.

debugasm