Files
clang-p2996/libcxx/modules/std/thread.inc
Louis Dionne 99174842ae [libc++] Make std::jthread supported in non-experimental mode (#107900)
We waited before supporting std::jthread fully because we wanted to
investigate other implementation strategies (in particular one involving
std::mutex). Since then, we did some benchmarking and decided that we
wouldn't be moving forward with std::mutex. Hence, there is no real
reason to punt on making std::jthread & friends non-experimental.
2024-09-12 09:48:59 -04:00

43 lines
1.1 KiB
C++

// -*- C++ -*-
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
export namespace std {
#ifndef _LIBCPP_HAS_NO_THREADS
// [thread.thread.class], class thread
using std::thread;
using std::swap;
// [thread.jthread.class], class jthread
using std::jthread;
// [thread.thread.this], namespace this_thread
namespace this_thread {
using std::this_thread::get_id;
using std::this_thread::sleep_for;
using std::this_thread::sleep_until;
using std::this_thread::yield;
} // namespace this_thread
// [thread.thread.id]
using std::operator==;
using std::operator<=>;
# ifndef _LIBCPP_HAS_NO_LOCALIZATION
using std::operator<<;
# endif // _LIBCPP_HAS_NO_LOCALIZATION
# if _LIBCPP_STD_VER >= 23
using std::formatter;
# endif
using std::hash;
#endif // _LIBCPP_HAS_NO_THREADS
} // namespace std