06.08.2013 Views

pSOSystem System Calls - Read

pSOSystem System Calls - Read

pSOSystem System Calls - Read

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

q_delete pSOS+ <strong>System</strong> <strong>Calls</strong><br />

Notes<br />

See Also<br />

Hex Mnemonic Description<br />

0x3A ERR_VARQ Queue is variable length.<br />

0x53 ERR_ILLRSC Queue not created from this node.<br />

1. Once created, a queue is generally used by multiple tasks for communication<br />

and synchronization. There is rarely a reason for deleting a queue, even when it<br />

is no longer used, except to allow reuse of the QCB.<br />

2. The calling task may be preempted after this call, if a task that is waiting for a<br />

message from the deleted queue has higher priority.<br />

3. Any pending messages are lost.<br />

4. q_delete() deletes an ordinary message queue. Use q_vdelete() to delete a<br />

variable length message queue.<br />

Multiprocessor Considerations<br />

If qid identifies a global queue, q_delete will notify the master node so that the<br />

queue can be removed from its Global Object Table. Thus, deletion of a global queue<br />

always causes activity on the master node.<br />

Callable From<br />

■ Task<br />

q_create, q_vdelete<br />

1-78 <strong>pSO<strong>System</strong></strong> <strong>System</strong> <strong>Calls</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!