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