From a514b3bd16e4f21202cc001d9294ac2c2f206c3d Mon Sep 17 00:00:00 2001 From: "Man, Jianting (Meco)" <920369182@qq.com> Date: Fri, 25 Mar 2022 11:07:18 -0400 Subject: [components][kconfig] 整理Kconfig目录名称和结构 (#5698) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/cplusplus/cpp11/gcc/mutex.cpp | 52 -------------------------------- 1 file changed, 52 deletions(-) delete mode 100644 components/cplusplus/cpp11/gcc/mutex.cpp (limited to 'components/cplusplus/cpp11/gcc/mutex.cpp') diff --git a/components/cplusplus/cpp11/gcc/mutex.cpp b/components/cplusplus/cpp11/gcc/mutex.cpp deleted file mode 100644 index e11f6d8990..0000000000 --- a/components/cplusplus/cpp11/gcc/mutex.cpp +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (c) 2006-2021, RT-Thread Development Team - * - * SPDX-License-Identifier: Apache-2.0 - * - * Change Logs: - * Date Author Notes - * 2021-04-27 flybreak the first version. - */ - -#include "mutex" - -namespace std -{ - // use a set of global and static objects - // a proxy function to pthread_once - - function once_functor; - - mutex& get_once_mutex() - { - static mutex once_mutex; - return once_mutex; - } - - inline unique_lock*& get_once_functor_lock_ptr() - { - static unique_lock* once_functor_mutex_ptr = nullptr; - return once_functor_mutex_ptr; - } - - void set_once_functor_lock_ptr(unique_lock* m_ptr) - { - get_once_functor_lock_ptr() = m_ptr; - } - - extern "C" - { - void once_proxy() - { - // need to first transfer the functor's ownership so as to call it - function once_call = std::move(once_functor); - - // no need to hold the lock anymore - unique_lock* lock_ptr = get_once_functor_lock_ptr(); - get_once_functor_lock_ptr() = nullptr; - lock_ptr->unlock(); - - once_call(); - } - } -} -- cgit v1.3.1