Copyright | Will Thompson, Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
Safe Haskell | None |
Language | Haskell2010 |
The #GThread struct represents a running thread. This struct is returned by g_thread_new() or g_thread_try_new(). You can obtain the #GThread struct representing the current thread by calling g_thread_self().
GThread is refcounted, see g_thread_ref() and g_thread_unref(). The thread represented by it holds a reference while it is running, and g_thread_join() consumes the reference that it is given, so it is normally not necessary to manage GThread references explicitly.
The structure is opaque -- none of its fields may be directly accessed.
- newtype Thread = Thread (ForeignPtr Thread)
- noThread :: Maybe Thread
- threadErrorQuark :: MonadIO m => m Word32
- threadExit :: MonadIO m => Ptr () -> m ()
- data ThreadRefMethodInfo
- threadRef :: MonadIO m => Thread -> m Thread
- threadSelf :: MonadIO m => m Thread
- data ThreadUnrefMethodInfo
- threadUnref :: MonadIO m => Thread -> m ()
- threadYield :: MonadIO m => m ()
Exported types
BoxedObject Thread | |
((~) * signature (m ()), MonadIO m) => MethodInfo * ThreadUnrefMethodInfo Thread signature | |
((~) * signature (m Thread), MonadIO m) => MethodInfo * ThreadRefMethodInfo Thread signature | |
((~) * info (ResolveThreadMethod t Thread), MethodInfo * info Thread p) => IsLabelProxy t (Thread -> p) | |
type AttributeList Thread |
Methods
threadErrorQuark
threadErrorQuark :: MonadIO m => m Word32 Source
threadExit
threadExit :: MonadIO m => Ptr () -> m () Source
threadRef
data ThreadRefMethodInfo Source
((~) * signature (m Thread), MonadIO m) => MethodInfo * ThreadRefMethodInfo Thread signature |
threadSelf
threadSelf :: MonadIO m => m Thread Source
threadUnref
data ThreadUnrefMethodInfo Source
((~) * signature (m ()), MonadIO m) => MethodInfo * ThreadUnrefMethodInfo Thread signature |
threadUnref :: MonadIO m => Thread -> m () Source
threadYield
threadYield :: MonadIO m => m () Source