Opened 16 years ago
Last modified 10 years ago
#260 new defect
IZ1716: errorprone: pthread_once() should not need be run before GET_SPECIFIC()
Reported by: | andreas | Owned by: | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | sge | Version: | 6.0 |
Severity: | Keywords: | cleanup | |
Cc: |
Description
[Imported from gridengine issuezilla http://gridengine.sunsource.net/issues/show_bug.cgi?id=1716]
Issue #: 1716 Platform: All Reporter: andreas (andreas) Component: gridengine OS: All Subcomponent: cleanup Version: 6.0 CC: None defined Status: NEW Priority: P3 Resolution: Issue type: DEFECT Target milestone: --- Assigned to: ernst (ernst) QA Contact: ernst URL: * Summary: errorprone: pthread_once() should not need be run before GET_SPECIFIC() Status whiteboard: Attachments: Issue 1716 blocks: Votes for issue 1716: Opened: Fri Jul 15 09:24:00 -0700 2005 ------------------------ Components which utilize per-thread global variables typically require pthread_once() be run prior GET_SPECIFIC() macro is used. Right now GET_SPECIIC macro does (1) if pthread_getspecific() fails for the key memory is allocated and initialized and registered using pthread_set_specific(). (2) if pthread_getspecific() succeeds the memory is simply used It is possible to overcome the need of explicitely using pthread_once() for running a function that does the actual pthread_key_create() ... by moving the pthread_once() into the the GET_SPECIFIC() macro wher it is run in case pthread_getspecific() fails.
Note: See
TracTickets for help on using
tickets.