full message queue

Joel Sherrill joel.sherrill at oarcorp.com
Mon Jul 2 15:25:14 UTC 2007


Thomas Doerfler wrote:
> Hi,
>
> AFAIK this is not possible. One way to emulate this would be to create a
> counting semaphore which is "obtained" whenever the writing task wants
> to write to the message queue and "released", wheneer the reading task
> has received a message.
>   

Since the functionality for blocking sends is in the SuperCore,
you could add a new method to the API .. something like
rtems_message_queue_send_blocking(...) with appropriate
arguments.  Then it could just map to the SuperCore.

You might have to add an attribute to the message queue create
to specify that this behavior is allowed but I am not 100% sure
this will be needed.

We discussed this a month or so ago on the list and I thought
someone had some part of it implemented.

--joel
> wkr,
> Thomas.
>
> Julien Houles schrieb:
>   
>> Hi, 
>>  
>> I'd like to know if it's possible to block the sending task (of a
>> message to a message queue) when the message queue is full until the
>> queue is no longer full.
>> I use the standard rtems_message_queue_send function (not the POSIX one).
>>  
>> Thanks a lot.
>>  
>> Julien.
>>
>> ------------------------------------------------------------------------
>> Ne gardez plus qu'une seule adresse mail ! Copiez vos mails
>> <http://www.trueswitch.com/yahoo-fr/> vers Yahoo! Mail
>>
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> rtems-users mailing list
>> rtems-users at rtems.com
>> http://rtems.rtems.org/mailman/listinfo/rtems-users
>>     
>
>
>   




More information about the users mailing list