source: rtems/c/src/exec/score/inline/tqdata.inl @ caaa47c

4.104.114.84.95
Last change on this file since caaa47c was ed32907, checked in by Joel Sherrill <joel.sherrill@…>, on 12/01/95 at 21:07:48

Added support for new synchronization algorithm. Specifically, the routine
_Thread_queue_Enter_critical_section was added.

  • Property mode set to 100644
File size: 1.4 KB
Line 
1/*  tqdata.inl
2 *
3 *  This file contains the static inline implementation of the inlined
4 *  routines needed to support the Thread Queue Data.
5 *
6 *  COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
7 *  On-Line Applications Research Corporation (OAR).
8 *  All rights assigned to U.S. Government, 1994.
9 *
10 *  This material may be reproduced by or for the U.S. Government pursuant
11 *  to the copyright license under the clause at DFARS 252.227-7013.  This
12 *  notice must appear in all copies of this file and its derivatives.
13 *
14 *  $Id$
15 */
16
17#ifndef __THREAD_QUEUE_DATA_inl
18#define __THREAD_QUEUE_DATA_inl
19
20/*PAGE
21 *
22 *  _Thread_queue_Header_number
23 *
24 */
25
26STATIC INLINE unsigned32 _Thread_queue_Header_number (
27  Priority_Control the_priority
28)
29{
30  return ( the_priority >> 6 );
31}
32
33/*PAGE
34 *
35 *  _Thread_queue_Is_reverse_search
36 *
37 */
38
39STATIC INLINE boolean _Thread_queue_Is_reverse_search (
40  Priority_Control the_priority
41)
42{
43  return ( the_priority & 0x20 );
44}
45
46/*PAGE
47 *
48 *  _Thread_queue_Get_number_waiting
49 *
50 */
51 
52STATIC INLINE unsigned32 _Thread_queue_Get_number_waiting (
53  Thread_queue_Control *the_thread_queue
54)
55{
56  return ( the_thread_queue->count );
57}
58
59/*PAGE
60 *
61 *  _Thread_queue_Enter_critical_section
62 *
63 */
64 
65STATIC INLINE void _Thread_queue_Enter_critical_section (
66  Thread_queue_Control *the_thread_queue
67)
68{
69  the_thread_queue->sync = TRUE;
70  the_thread_queue->sync_state = THREAD_QUEUE_NOTHING_HAPPENED;
71}
72
73#endif
74/* end of include file */
Note: See TracBrowser for help on using the repository browser.