I need to share a data structure used by a RTX Thread and and ISR. Its basically a circular queue for the serial port. Now the options that I am aware of are to either use isr_mbx_send() to post messages or else use isr_sem_send. But both the options come with a overhead.
Is there anything else that I can use, without disabling scheduling or interrupts and yet share the data structure?
Thanks for the reply.
I think you are right since the reader and writer are the owners of their respective pointers it doesnt matter a lot if one reads while the other is performing in the middle of performing a write ( hope fully it will be atomic ).
As you have suggested I will still use of the mechanisms to send an event to the task so that it wakes up.
-Phani