1 /*
2 * Copyright (C) Mellanox Technologies Ltd. 2001-2015.  ALL RIGHTS RESERVED.
3 * Copyright (C) The University of Tennessee and The University
4 *               of Tennessee Research Foundation. 2015. ALL RIGHTS RESERVED.
5 *
6 * See file LICENSE for terms.
7 */
8 
9 #ifndef UCS_TYPE_THREAD_MODE_H
10 #define UCS_TYPE_THREAD_MODE_H
11 
12 
13 /**
14  * @ingroup UCS_RESOURCE
15  * @brief Thread sharing mode
16  *
17  * Specifies thread sharing mode of an object.
18  */
19 typedef enum {
20     UCS_THREAD_MODE_SINGLE,     /**< Only the master thread can access (i.e. the thread that initialized the context; multiple threads may exist and never access) */
21     UCS_THREAD_MODE_SERIALIZED, /**< Multiple threads can access, but only one at a time */
22     UCS_THREAD_MODE_MULTI,      /**< Multiple threads can access concurrently */
23     UCS_THREAD_MODE_LAST
24 } ucs_thread_mode_t;
25 
26 
27 #endif
28