ROOT
6.08/07
Reference Guide
core
thread
src
TPosixThreadFactory.cxx
Go to the documentation of this file.
1
// @(#)root/thread:$Id$
2
// Author: Fons Rademakers 01/07/97
3
4
/*************************************************************************
5
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
6
* All rights reserved. *
7
* *
8
* For the licensing terms see $ROOTSYS/LICENSE. *
9
* For the list of contributors see $ROOTSYS/README/CREDITS. *
10
*************************************************************************/
11
12
//////////////////////////////////////////////////////////////////////////
13
// //
14
// TPosixThreadFactory //
15
// //
16
// This is a factory for Posix thread components. //
17
// //
18
//////////////////////////////////////////////////////////////////////////
19
20
#include "
TPosixThreadFactory.h
"
21
#include "
TPosixMutex.h
"
22
#include "
TPosixCondition.h
"
23
#include "
TPosixThread.h
"
24
25
// Force creation of TPosixThreadFactory when shared library will be loaded
26
// (don't explicitly create a TPosixThreadFactory).
27
static
TPosixThreadFactory
gPosixThreadFactoryCreator
;
28
29
ClassImp
(
TPosixThreadFactory
)
30
31
////////////////////////////////////////////////////////////////////////////////
32
/// Create Posix thread factory. Also sets global gThreadFactory to this.
33
34
TPosixThreadFactory
::
TPosixThreadFactory
(const
char
*
name
, const
char
*title) :
35
TThreadFactory
(name, title)
36
{
37
gThreadFactory
=
this
;
38
}
39
40
////////////////////////////////////////////////////////////////////////////////
41
/// Return a Posix Mutex.
42
43
TMutexImp
*
TPosixThreadFactory::CreateMutexImp
(
Bool_t
recursive=
kFALSE
)
44
{
45
return
new
TPosixMutex
(recursive);
46
}
47
48
////////////////////////////////////////////////////////////////////////////////
49
/// Return a Posix thread.
50
51
TThreadImp
*
TPosixThreadFactory::CreateThreadImp
()
52
{
53
return
new
TPosixThread
;
54
}
55
56
////////////////////////////////////////////////////////////////////////////////
57
/// Return a Posix condition variable.
58
59
TConditionImp
*
TPosixThreadFactory::CreateConditionImp
(
TMutexImp
*
m
)
60
{
61
return
new
TPosixCondition
(m);
62
}
TPosixCondition
Definition:
TPosixCondition.h:39
TPosixThread.h
Bool_t
bool Bool_t
Definition:
RtypesCore.h:59
kFALSE
const Bool_t kFALSE
Definition:
Rtypes.h:92
gThreadFactory
R__EXTERN TThreadFactory * gThreadFactory
Definition:
TThreadFactory.h:47
TPosixCondition.h
TPosixThreadFactory::CreateThreadImp
virtual TThreadImp * CreateThreadImp()
Return a Posix thread.
Definition:
TPosixThreadFactory.cxx:51
gPosixThreadFactoryCreator
static TPosixThreadFactory gPosixThreadFactoryCreator
Definition:
TPosixThreadFactory.cxx:27
TThreadFactory
Definition:
TThreadFactory.h:34
TPosixThreadFactory::CreateConditionImp
virtual TConditionImp * CreateConditionImp(TMutexImp *m)
Return a Posix condition variable.
Definition:
TPosixThreadFactory.cxx:59
TPosixThreadFactory
Definition:
TPosixThreadFactory.h:33
m
TMarker * m
Definition:
textangle.C:8
TConditionImp
Definition:
TConditionImp.h:33
ClassImp
#define ClassImp(name)
Definition:
Rtypes.h:279
TMutexImp
Definition:
TMutexImp.h:33
TPosixThreadFactory::CreateMutexImp
virtual TMutexImp * CreateMutexImp(Bool_t recursive)
Return a Posix Mutex.
Definition:
TPosixThreadFactory.cxx:43
TPosixThread
Definition:
TPosixThread.h:37
TPosixMutex.h
TPosixMutex
Definition:
TPosixMutex.h:34
TThreadImp
Definition:
TThreadImp.h:34
TPosixThreadFactory.h
name
char name[80]
Definition:
TGX11.cxx:109