RcmServer Instance create parameters. More...
#include <RcmServer.h>
Data Fields | |
Thread_Priority | priority |
Server thread priority. | |
Int | osPriority |
Server thread priority (OS-specific). | |
SizeT | stackSize |
The stack size in bytes of the server thread. | |
String | stackSeg |
The server thread stack placement. | |
RcmServer_ThreadPoolDesc | defaultPool |
The default thread pool used for anonymous messages. | |
RcmServer_ThreadPoolDescAry | workerPools |
Array of thread pool descriptors. | |
RcmServer_FxnDescAry | fxns |
Array of function names to install into the server. |
RcmServer Instance create parameters.
Thread_Priority RcmServer_Params::priority |
Server thread priority.
This value is Operating System independent. It determines the execution priority of the server thread. The server thread reads the incoming message and then either executes the message function (in-band execution) or dispatches the message to a thread pool (out-of-band execution). The server thread then wait on the next message.
Server thread priority (OS-specific).
This value is Operating System specific. It determines the execution priority of the server thread. If this attribute is set, it takes precedence over the priority attribute below. The server thread reads the incoming message and then either executes the message function (in-band execution) or dispatches the message to a thread pool (out-of-band execution). The server thread then wait on the next message.
The stack size in bytes of the server thread.
String RcmServer_Params::stackSeg |
The server thread stack placement.
The default thread pool used for anonymous messages.
Array of thread pool descriptors.
The worker pools declared with this instance parameter are statically bound to the server, they persist for the life of the server. They cannot be removed with a call to RcmServer_deletePool(). However, worker threads may be created or deleted at runtime.
Array of function names to install into the server.
The functions declared with this instance parameter are statically bound to the server, they persist for the life of the server. They cannot be removed with a call to RcmServer_removeSymbol().
To specify a function address, use the & character in the string as in the following example.
RcmServer_FxnDesc serverFxnAry[] = { { "LED_on", LED_on }, { "LED_off", LED_off } }; #define serverFxnAryLen (sizeof serverFxnAry / sizeof serverFxnAry[0]) RcmServer_FxnDescAry Server_fxnTab = { serverFxnAryLen, serverFxnAry }; RcmServer_Params rcmServerP; RcmServer_Params_init(&rcmServerP); rcmServerP.fxns.length = Server_fxnTab.length; rcmServerP.fxns.elem = Server_fxnTab.elem; RcmServer_Handle rcmServerH; rval = RcmServer_create("ServerA", &rcmServerP, &(rcmServerH));