[root] / trunk / core / base / src / TVirtualMutex.cxx Repository:
ViewVC logotype

Log of /trunk/core/base/src/TVirtualMutex.cxx

Parent Directory Parent Directory


Links to HEAD: (view) (download) (as text) (annotate)
Sticky Revision:

Revision 22961 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Apr 3 13:32:57 2008 UTC (6 years, 9 months ago) by rdm
File length: 2571 byte(s)
Diff to previous 20877
move the directories:
  base clib cont meta metautils newdelete pcre rint thread unix utils
  winnt zip
under the new core meta directory.

Revision 20877 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 19 11:17:07 2007 UTC (7 years, 2 months ago) by rdm
Original Path: trunk/base/src/TVirtualMutex.cxx
File length: 2571 byte(s)
Diff to previous 19826
Set property svn:eol-style LF on all source and Makefiles. This should avoid
problems with Win32 line endings ending up in the repository. All MS tools
support LF eols fine.

Revision 19826 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:56:11 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/base/src/TVirtualMutex.cxx
File length: 2571 byte(s)
Diff to previous 19825
imported svn:keywords Id property

Revision 19825 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:49:10 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/base/src/TVirtualMutex.cxx
File length: 2626 byte(s)
Diff to previous 12177
remove :$ from tag line

Revision 12177 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Jun 23 20:51:14 2005 UTC (9 years, 7 months ago) by rdm
Original Path: trunk/base/src/TVirtualMutex.cxx
File length: 2636 byte(s)
Diff to previous 12131
From Constantin:
fixes the problem with the global mutex in an efficient way consistent
with the way the local mutexes are implemented.

Revision 12131 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Jun 23 07:56:15 2005 UTC (9 years, 7 months ago) by brun
Original Path: trunk/base/src/TVirtualMutex.cxx
File length: 2793 byte(s)
Diff to previous 12123
Move the body of SetGlobalMutex and GetGlobalMutex to the implementation file.
On Windows, static members cannot be set inline when the header file is used
across different dlls.

Revision 12123 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Jun 22 20:18:12 2005 UTC (9 years, 7 months ago) by brun
Original Path: trunk/base/src/TVirtualMutex.cxx
File length: 2653 byte(s)
Diff to previous 11687
From Constantin Loizides

This patch implements:
- decentralized, automatic mutex initialization,
  see R__LOCKGUARD2 in TVirtualMutex
- PROOF parallel startup fixes
- more thread protection (in base, cont, meta, rest to be done)
- cleanups

From Eddy Offermann:
TString::Atoi and Atof are made const.

Revision 11687 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Apr 28 16:14:28 2005 UTC (9 years, 8 months ago) by rdm
Original Path: trunk/base/src/TVirtualMutex.cxx
File length: 2545 byte(s)
Diff to previous 10791
From Gerri:
Patch introducing parallel startup of the slave servers. This new feature
will considerably reduce the startup time in PROOF setups with many 10's
to 100's of slaves. By default this feature is off, turn it on in the
[system].rootrc file by uncommenting the line:

Proof.ParallelStartup: yes

Summary of changes:

Index: Makefile

  - Add the thread lib to PROOFLIBS

Index: base/inc/TVirtualMutex.h, base/src/TVirtualMutex.cxx

  - Add global mutexes to protect printing and authentication

Index: base/src/TError.cxx

  - Protect static buffer in DebugPrint with specific global mutex

Index: config/Makefile.depend

  - Add dependence on thread lib for PROOF

Index: config/rootrc.in

  - Add description of new envs
      Proof.ParallelStartup, Auth.Timeout, ProofServ.UseSSH

Index: net/inc/TAuthenticate.h

  - Add new member fTimeout to indicate timeout situations
    and new method HasTimedOut() to retrieve it.
  - Add new static member with the timeout value in sec
    and method SetTimeOut() to set it
  - Add new method CatchTimeOut() called at timeout expiration


Index: net/inc/THostAuth.h , net/src/THostAuth.cxx

  - Add new method SetLast() to lower pririty of an attempted
    protocol that has timed-out


Index: net/src/TAuthenticate.cxx

  - Implementation of the new timeout setup using TTimer
  - Add protection using specific global mutex
  - change to start with lower case some local variables
    in Authenticate
  - re-introduce call to THostAuth::CountFailure() (which got
    lost in a previous patch)
  - Disable by default SSH for PROOF servers
  - fix a couple of small memory leaks

Index: net/src/TPSocket.cxx

  - Fix logic in Close() (if called too early (e.g. timeout)
    the underlying socket can still be open and needs to be
    closed).


Index: net/src/TSocket.cxx

  - initialize member fTcpWindowSize in all constructors
  - modify error logging after an unsuccessful authentication
    attempt, checking for timeouts.
  - disable SSH for PROOF servers

Index: proof/inc/TProof.h

  - patch for parallel startup using threads:
    - new methods SlaveStartupThread(void *) and
      SubmasterStartupThread(void *) executed in threads
    - add Bool_t argument to all implementations of StartSlaves

Index: proof/src/TProof.cxx

  - patch for parallel startup using threads:
    - add internal classes ProofThread and ProofThreadArg to keep
      track of started threads and to pass arguments to threads
  - cleanup fPlayer and fFeedBack in destructor

Index: rpdutils/src/rpdutils.cxx

  - fix small memory leak

Index: thread/src/TThread.cxx

  - initialize new global mutexes

Revision 10791 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Dec 15 13:15:14 2004 UTC (10 years, 1 month ago) by rdm
Original Path: trunk/base/src/TVirtualMutex.cxx
File length: 2480 byte(s)
Diff to previous 4056
protect the TStorage alloc routines with a new gAllocMutex lock instead
of using the gCINTMutex, this to avoid deadlocks when new threads
are created in code executed via the plugin mananger (which holds the
CINTMutex).

Revision 4056 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Feb 22 09:37:29 2002 UTC (12 years, 11 months ago) by brun
Original Path: trunk/base/src/TVirtualMutex.cxx
File length: 2447 byte(s)
Diff to previous 3984
Patch from Mathieu de Naurois adding Thread-safety in many ROOT classes.
A new TVirtualMutex global is defined in TVirtualMutex.h (gCINTmutex).
gCINTMutes is used in TMethodCall to protect concurrent access to CINT.
The R__LOCKGUARD macro is introduced in many classes to check for a mutex.
The performance penalty introduced by the MUTEX logic
 -is ZERO in the application has no threads
 -about 10% in case of threads

Revision 3984 - (view) (download) (as text) (annotate) - [select for diffs]
Added Thu Feb 14 16:12:52 2002 UTC (12 years, 11 months ago) by rdm
Original Path: trunk/base/src/TVirtualMutex.cxx
File length: 2361 byte(s)
introduce new abstract class TVirtualMutex in base and move TLockGuard from
thread to base. TMutex now derives from TVirtualMutex. Also add zero
overhead macros to be used to place mutexes (zero overhead in case ROOT
is not compiled with thread support). Added, example, global container
mutex which should be initialized when libThread is loaded to point to
a real mutex. To be done and tested by Mathieu de Naurois.

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

Subversion Admin
ViewVC Help
Powered by ViewVC 1.0.9