Does signal() is supported in NetBurner uC/OS?

Greetings,

I am new to NetBurner and uC/OS. I wonder, if there is a facility of signal() mechanism is provided in Netburner uC/OS.

I have a need in which my child thread waits on both incoming message queue(through Server process) and socket(to accept foriegn connections).

My problem is when this thread is waiting for incoming connections, Server can pass data to be sent through message queue. So I though to get the message in some kind of asynchonous handler such as signal handler. Now when server wants to pass the message it calls the singal() function that wiil break the receive() blocking call amd the hadler will get executed. In hadler I will take the message from queue and send() it.

In receive I can check the breakin condition such as -EINTR and continue() to receive().

But I am not sure whether in NetBurner uC/OS, signal() and global error variable mechanism is supported.

Can anybody shed some light on it. Thanks in anticipation.

Thanks,

JD

Reply to
Mozis
Loading thread data ...

Have you considered reading the manual? It sounds as though uC/OS mailboxes or semaphore might be what you are looking for.

TW

Reply to
Ted

Have you considered reading the manual? It sounds as though uC/OS mailboxes or semaphore might be what you are looking for.

TW

Reply to
Ted

If you are waitng on I/O or network traffic and you also want to wait on another "thing" not I/O then you will have to use select.

For the I/O channel the fd for the select call is the normal fd that describes the communication channel.

For the "other" thing then you need to create a file descriptor whoose sole purpose is signaling state.

This is done with

#include

Then get aan fd with the GetExtraFD call...

and set it's state for select with

void SetDataAvail( int fd ); void ClrDataAvail( int fd );

void SetWriteAvail( int fd ); void ClrWriteAvail( int fd );

void SetHaveError( int fd ); void ClrHaveError( int fd );

If you need more details on this submit s support ticket or post to the netburner yahoo group. (The best place to get Netburner specific advice)

Paul

Reply to
pbreed

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.