mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-11-23 19:03:59 +08:00
gc.h (GC_is_thread_suspended): Declare.
* include/gc.h (GC_is_thread_suspended): Declare. * pthread_stop_world.c (GC_is_thread_suspended): New function. From-SVN: r124081
This commit is contained in:
parent
f749a55bb4
commit
494d64aff6
@ -1,3 +1,8 @@
|
||||
2007-04-23 Keith Seitz <keiths@redhat.com>
|
||||
|
||||
* include/gc.h (GC_is_thread_suspended): Declare.
|
||||
* pthread_stop_world.c (GC_is_thread_suspended): New function.
|
||||
|
||||
2007-04-03 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* configure.ac (NO_EXECUTE_PERMISSION): Set by default.
|
||||
|
@ -1085,5 +1085,6 @@ GC_API void GC_register_has_static_roots_callback
|
||||
&& !defined(GC_WIN32_THREADS) && !defined(GC_DARWIN_THREADS)
|
||||
GC_API void GC_suspend_thread GC_PROTO((pthread_t));
|
||||
GC_API void GC_resume_thread GC_PROTO((pthread_t));
|
||||
GC_API int GC_is_thread_suspended GC_PROTO((pthread_t));
|
||||
#endif
|
||||
#endif /* _GC_H */
|
||||
|
@ -483,6 +483,14 @@ void GC_resume_thread(pthread_t thread) {
|
||||
t -> flags &= ~SUSPENDED;
|
||||
}
|
||||
|
||||
int GC_is_thread_suspended(pthread_t thread) {
|
||||
GC_thread t = GC_lookup_thread(thread);
|
||||
if (t == NULL)
|
||||
ABORT("querying suspension state of unknown thread");
|
||||
|
||||
return (t -> flags & SUSPENDED);
|
||||
}
|
||||
|
||||
/* Caller holds allocation lock, and has held it continuously since */
|
||||
/* the world stopped. */
|
||||
void GC_start_world()
|
||||
|
Loading…
Reference in New Issue
Block a user