[ ]
 Real time embedded FreeRTOS RSS feed 
Real time embedded FreeRTOS mailing list 
Homepage FreeRTOS Labs FreeRTOS+TCP FreeRTOS+FAT Contact / Enquiries


FreeRTOS+TCP is still in the lab
FreeRTOS+TCP is already used in commercial products and we encourage you to try it yourself. Be aware however that we are still refining its design, and the source code and documentation do not yet meet Real Time Engineers Ltd's strict quality standards.
Please use the forum for support, feedback and ideas, or contact us directly if you have a specific business interest.

FreeRTOS_SignalSocket()

[FreeRTOS+TCP API Reference]

FreeRTOS_sockets.h
BaseType_t FreeRTOS_SignalSocket( Socket_t xSocket );

BaseType_t FreeRTOS_SignalSocketFromISR( Socket_t xSocket,
                                         BaseType_t *pxHigherPriorityTaskWoken );
		
Used to send a signal to a socket, the result of which is that any task blocked on a read from the socket will leave the Blocked state (abort the blocking operation), with the task's read operation (FreeRTOS_recv() or FreeRTOS_recvfrom()) returning -pdFREERTOS_ERRNO_EINTR.

If the socket is part of a socket set (SocketSet_t), the call to FreeRTOS_select() using that socket set, will also get interrupted and return -pdFREERTOS_ERRNO_EINTR.

FreeRTOS_SignalSocketFromISR() is a version of FreeRTOS_SignalSocket() that can be used from an interrupt service routine (ISR).

ipconfigSUPPORT_SIGNALS must be set to 1 in FreeRTOSIPConfig.h for FreeRTOS_SignalSocket() to be available.

Parameters:

xSocket   The socket to which the signal is being sent.

pxHigherPriorityTaskWoken   [FreeRTOS_SignalSocketFromISR() only.]

*pxHigherPriorityTaskWoken must be initialised to 0.

FreeRTOS_SignalSocketFromISR() will set *pxHigherPriorityTaskWoken to pdTRUE if sending the signal to the socket caused a task to unblock, and the unblocked task has a priority higher than the currently running task.

If FreeRTOS_SignalSocket() sets this value to pdTRUE then a context switch should be requested before the interrupt is exited. The name of the macro used to request a context switch from an ISR is dependent on the port, and will be called either portYIELD_FROM_ISR() or portEND_SWITCHING_ISR(). Refer to the documentation and examples provided for the port in use.

Returns:

If xSocket is not a valid socket then -pdFREERTOS_ERRNO_EINVAL is returned. Otherwise 0 is returned.


[ Back to the top ]    [ About FreeRTOS ]    [ FreeRTOS Labs Sitemap ]    [ Main FreeRTOS Sitemap ]    [ ]




Copyright (C) 2004-2010 Richard Barry. Copyright (C) 2010-2016 Real Time Engineers Ltd.
Any and all data, files, source code, html content and documentation included in the FreeRTOSTM distribution or available on this site are the exclusive property of Real Time Engineers Ltd.. See the files license.txt (included in the distribution) and this copyright notice for more information. FreeRTOSTM and FreeRTOS.orgTM are trade marks of Real Time Engineers Ltd.