activemq-cpp-3.9.5
LockSupport.h
Go to the documentation of this file.
1/*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18#ifndef _DECAF_UTIL_CONCURRENT_LOCKSUPPORT_H_
19#define _DECAF_UTIL_CONCURRENT_LOCKSUPPORT_H_
20
21#include <decaf/util/Config.h>
22
23namespace decaf {
24namespace lang{
25 class Thread;
26}
27namespace util {
28namespace concurrent {
29namespace locks {
30
97 class DECAF_API LockSupport {
98 private:
99
100 LockSupport();
101
102 public:
103
105
114 static void unpark( decaf::lang::Thread* thread );
115
131 static void park();
132
153 static void parkNanos( long long nanos );
154
175 static void parkUntil( long long deadline );
176
177 };
178
179}}}}
180
181#endif /* _DECAF_UTIL_CONCURRENT_LOCKSUPPORT_H_ */
A Thread is a concurrent unit of execution.
Definition Thread.h:64
static void unpark(decaf::lang::Thread *thread)
Makes available the permit for the given thread, if it was not already available.
static void parkNanos(long long nanos)
Disables the current thread for thread scheduling purposes, for up to the specified waiting time,...
static void park()
Disables the current thread for thread scheduling purposes unless the permit is available.
static void parkUntil(long long deadline)
Disables the current thread for thread scheduling purposes, until the specified deadline,...
#define DECAF_API
Definition Config.h:29
Definition ThreadingTypes.h:31
Definition AbstractOwnableSynchronizer.h:29
Definition AbstractExecutorService.h:28
Definition AbstractCollection.h:33
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
Definition AprPool.h:25