X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcode%2Fthread.lisp;h=3d1ecd4086c76206f96621797818c88c0c1c7a2a;hb=b14a61c6af3e3005c94e633e727177346240066e;hp=bbd9e304c763c1857800b8ede549bafa36b32fc0;hpb=83fc8f3154fa6ffe1c9451399eb23586ae07357d;p=sbcl.git diff --git a/src/code/thread.lisp b/src/code/thread.lisp index bbd9e30..3d1ecd4 100644 --- a/src/code/thread.lisp +++ b/src/code/thread.lisp @@ -11,6 +11,9 @@ (in-package "SB!THREAD") +(eval-when (:compile-toplevel :load-toplevel :execute) + (sb!xc:proclaim '(sb!ext:always-bound *current-thread*))) + (def!type thread-name () 'simple-string) @@ -32,6 +35,21 @@ in future versions." :type mutex) waiting-for) +(def!struct (foreign-thread + (:include thread) + (:conc-name "THREAD-")) + #!+sb-doc + "Type of native threads which are attached to the runtime as Lisp threads +temporarily.") + +#!+(and sb-safepoint-strictly (not win32)) +(def!struct (signal-handling-thread + (:include foreign-thread) + (:conc-name "THREAD-")) + #!+sb-doc + "Asynchronous signal handling thread." + (signal-number nil :type integer)) + (def!struct mutex #!+sb-doc "Mutex type."