︙ | | |
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
-
+
-
+
|
}
/**
* \brief Creates a new Thread Local Storage key
*
* \return A new, autoreleased Thread Local Storage key
*/
+ TLSKey;
+ (instancetype)TLSKey;
/**
* \brief Creates a new Thread Local Storage key with the specified destructor.
*
* \param destructor A destructor that is called when the thread is terminated
* \return A new autoreleased Thread Local Storage key
*/
+ TLSKeyWithDestructor: (void(*)(id))destructor;
+ (instancetype)TLSKeyWithDestructor: (void(*)(id))destructor;
+ (void)callAllDestructors;
/**
* \brief Initializes an already allocated Thread Local Storage Key with the
* specified destructor.
*
|
︙ | | |
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
|
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
|
-
+
-
+
-
+
|
#endif
/**
* \brief Creates a new thread.
*
* \return A new, autoreleased thread
*/
+ thread;
+ (instancetype)thread;
/**
* \brief Creates a new thread with the specified object.
*
* \param object An object which is passed for use in the main method or nil
* \return A new, autoreleased thread
*/
+ threadWithObject: (id)object;
+ (instancetype)threadWithObject: (id)object;
#ifdef OF_HAVE_BLOCKS
/**
* \brief Creates a new thread with the specified block.
*
* \param block A block which is executed by the thread
* \return A new, autoreleased thread
*/
+ threadWithBlock: (of_thread_block_t)block;
+ (instancetype)threadWithBlock: (of_thread_block_t)block;
#endif
/**
* \brief Sets the Thread Local Storage for the specified key.
*
* The specified object is first retained and then the object stored before is
* released. You can specify nil as object if you want the old object to be
|
︙ | | |
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
|
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
|
-
+
|
}
/**
* \brief Creates a new mutex.
*
* \return A new autoreleased mutex.
*/
+ mutex;
+ (instancetype)mutex;
/**
* \brief Locks the mutex.
*/
- (void)lock;
/**
|
︙ | | |
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
|
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
|
-
+
|
}
/**
* \brief Creates a new condition.
*
* \return A new, autoreleased OFCondition
*/
+ condition;
+ (instancetype)condition;
/**
* \brief Blocks the current thread until another thread calls -[signal] or
* -[broadcast].
*/
- (void)wait;
|
︙ | | |