Commit Graph

65 Commits

Author SHA1 Message Date
oana 841314da5f Add YATE library support for setting and getting the affinity of a thread.
git-svn-id: http://yate.null.ro/svn/yate/trunk@6429 acf43c95-373e-0410-b603-e72c3f656dc1
2020-09-23 15:26:34 +00:00
paulc c4c9e994f0 Renamed DebugGoOn to DebugCrit so it better matches its purpose.
Swapped order of DebugCall and DebugNote so DebugCall is less visible.
Changed default debug level to DebugNote.
Modified a few inadequate uses of DebugCrit.


git-svn-id: http://yate.null.ro/svn/yate/trunk@6250 acf43c95-373e-0410-b603-e72c3f656dc1
2017-08-01 13:08:23 +00:00
paulc 37a72e4bc1 Added copyright notices to sources and scripts missing them.
Updated copyright notices for 2014.
Fixed end of lines in many files.


git-svn-id: http://yate.null.ro/svn/yate/trunk@5755 acf43c95-373e-0410-b603-e72c3f656dc1
2014-02-05 11:42:17 +00:00
paulc 76fdb5ce75 Added support for counting allocated objects for memory leaks troubleshooting.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5752 acf43c95-373e-0410-b603-e72c3f656dc1
2014-02-04 16:36:23 +00:00
paulc cf5d0fd71a Changed license terms in each source file to reference an external file.
git-svn-id: http://yate.null.ro/svn/yate/trunk@5609 acf43c95-373e-0410-b603-e72c3f656dc1
2013-08-06 13:38:10 +00:00
paulc 3cf42e2828 Use Alarm() in places that could prevent normal operation.
This allows sending SNMP traps when parts of the service become non-operational.


git-svn-id: http://yate.null.ro/svn/yate/trunk@5569 acf43c95-373e-0410-b603-e72c3f656dc1
2013-07-08 12:21:26 +00:00
oana 4f03ed80e8 Allow Thread::killall() to work from any thread.
git-svn-id: http://yate.null.ro/svn/yate/trunk@4986 acf43c95-373e-0410-b603-e72c3f656dc1
2012-04-04 09:27:29 +00:00
paulc d8b784be12 Report the number of threads that are to be cancelled at shutdown.
Protect against not cancelling threads if compiling with SOFT_WAITS <= 0.


git-svn-id: http://yate.null.ro/svn/yate/trunk@3386 acf43c95-373e-0410-b603-e72c3f656dc1
2010-06-16 13:45:54 +00:00
paulc a412a081e2 Improve shutdown behavior by first soft cancelling all threads and waiting a while for them to exit.
Based on a patch by Allan Sandfeld Jensen.


git-svn-id: http://yate.null.ro/svn/yate/trunk@3385 acf43c95-373e-0410-b603-e72c3f656dc1
2010-06-16 12:23:23 +00:00
paulc 8e07545b79 Double the system idle interval when running in client mode, make it adjustable from the config file.
git-svn-id: http://yate.null.ro/svn/yate/trunk@3163 acf43c95-373e-0410-b603-e72c3f656dc1
2010-03-31 09:36:58 +00:00
paulc fb6762b981 When compiled for debugging warn if a thread calls idle() holding mutex locks.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2831 acf43c95-373e-0410-b603-e72c3f656dc1
2009-09-10 18:59:05 +00:00
paulc ebd41dfaec Use the platform idle time in various sleeps in SIP and Jabber.
Fixed a compiler warning about the copy constructor of Mutex and 
Semaphore.


git-svn-id: http://yate.null.ro/svn/yate/trunk@2763 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-22 15:41:28 +00:00
paulc 259f204d39 Set the thread name when running under windbg or Visual Studio debugger.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2755 acf43c95-373e-0410-b603-e72c3f656dc1
2009-07-09 15:34:54 +00:00
paulc f4b1496a46 Added an unified Thread::idle method, use it instead of arbitrary
sleeps.


git-svn-id: http://yate.null.ro/svn/yate/trunk@2737 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-24 16:47:29 +00:00
paulc c0eec08096 Make use of prctl() if available.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2729 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-22 11:09:38 +00:00
paulc fc2b3d5e2e Thread support for systems without inherited scheduling and/or thread
cancelling.


git-svn-id: http://yate.null.ro/svn/yate/trunk@2719 acf43c95-373e-0410-b603-e72c3f656dc1
2009-06-18 11:41:44 +00:00
paulc 85da36395b Added names to the Mutex class to ease debugging of deadlocks.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2611 acf43c95-373e-0410-b603-e72c3f656dc1
2009-05-05 12:25:31 +00:00
paulc b31b9a2ee6 Ask for explicit (non-inherited) pthread scheduling parameters.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2473 acf43c95-373e-0410-b603-e72c3f656dc1
2009-02-04 21:07:28 +00:00
marian 31350b4fbe Added File manipulation methods. Added Time conversion methods. Thread last error string can now be obtained from the system.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2416 acf43c95-373e-0410-b603-e72c3f656dc1
2009-01-09 14:30:05 +00:00
paulc 2fdb637ec6 Abandon unkillable pthreads instead of forcingly destroying them.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2252 acf43c95-373e-0410-b603-e72c3f656dc1
2008-10-06 13:42:27 +00:00
paulc c2570903f4 Moved locked mutex verification to catch all synchronous thread exits.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2229 acf43c95-373e-0410-b603-e72c3f656dc1
2008-09-20 06:57:23 +00:00
paulc a04d82e731 Detect as early as possible if a thread is going to exit holding mutexes.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2228 acf43c95-373e-0410-b603-e72c3f656dc1
2008-09-19 21:15:39 +00:00
marian c7620ef2e6 Fixed thread sleep time to avoid sleeping 0ms when requested a positive value less then 1000us (Windows only).
git-svn-id: http://yate.null.ro/svn/yate/trunk@2182 acf43c95-373e-0410-b603-e72c3f656dc1
2008-09-04 13:30:17 +00:00
paulc d1b55ca3e7 Abort immediately on highly critical errors even if not requested from command line.
git-svn-id: http://yate.null.ro/svn/yate/trunk@2043 acf43c95-373e-0410-b603-e72c3f656dc1
2008-07-01 14:57:43 +00:00
paulc e57e9ec1ee Print thread name when hard cancelling - helps in detecting potential problems.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1661 acf43c95-373e-0410-b603-e72c3f656dc1
2008-01-23 16:52:11 +00:00
paulc 52bfb29082 Lock the list of private objects while querying running() status.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1356 acf43c95-373e-0410-b603-e72c3f656dc1
2007-06-08 18:31:54 +00:00
paulc 6fc18d1cc2 Commited hard cancel fix submitted by Etoile Di�se.
git-svn-id: http://yate.null.ro/svn/yate/trunk@1023 acf43c95-373e-0410-b603-e72c3f656dc1
2006-09-10 14:21:32 +00:00
paulc fdeffa0e2b Fixed init order on Win2000 Advanced Server.
Added missing project file for analyzer channel.


git-svn-id: http://yate.null.ro/svn/yate/trunk@864 acf43c95-373e-0410-b603-e72c3f656dc1
2006-06-13 20:38:44 +00:00
paulc bc7555cdb5 Made some local variables static.
git-svn-id: http://yate.null.ro/svn/yate/trunk@851 acf43c95-373e-0410-b603-e72c3f656dc1
2006-06-10 12:05:16 +00:00
paulc cda2d9f1c2 Updated copyright and FSF address.
git-svn-id: http://yate.null.ro/svn/yate/trunk@815 acf43c95-373e-0410-b603-e72c3f656dc1
2006-05-27 15:08:43 +00:00
paulc 5f972a465c Worked around a bug in older libpthread - waking up a canceled thread that
was trying to lock a mutex.


git-svn-id: http://yate.null.ro/svn/yate/trunk@682 acf43c95-373e-0410-b603-e72c3f656dc1
2006-02-09 18:49:44 +00:00
paulc 8faacfe499 Fixed a nasty bug in Linux TLS initialization.
Improved thread/mutex debugging.


git-svn-id: http://yate.null.ro/svn/yate/trunk@652 acf43c95-373e-0410-b603-e72c3f656dc1
2006-01-18 18:28:28 +00:00
paulc 73e01366aa Reference counters are strictly enforced.
git-svn-id: http://yate.null.ro/svn/yate/trunk@651 acf43c95-373e-0410-b603-e72c3f656dc1
2006-01-18 16:06:05 +00:00
paulc 43f51eca13 Interlocking related fixes.
git-svn-id: http://yate.null.ro/svn/yate/trunk@640 acf43c95-373e-0410-b603-e72c3f656dc1
2006-01-12 19:06:25 +00:00
paulc 739bed212b Refactored locking and list iteration to solve deadlocks and race conditions.
git-svn-id: http://yate.null.ro/svn/yate/trunk@639 acf43c95-373e-0410-b603-e72c3f656dc1
2006-01-12 05:32:06 +00:00
paulc 7162de80d4 Fixes for Windows compilation suggested by Faizan Naqvi (Tili).
Added names for thread priorities.
Fixed the way some channels handle timestamps (broken by the delta->full API change).


git-svn-id: http://yate.null.ro/svn/yate/trunk@536 acf43c95-373e-0410-b603-e72c3f656dc1
2005-10-07 22:03:19 +00:00
paulc 419dd9719c Added forward declarations instead of relying on friend - should make GCC 4 happy.
git-svn-id: http://yate.null.ro/svn/yate/trunk@454 acf43c95-373e-0410-b603-e72c3f656dc1
2005-07-17 11:51:51 +00:00
paulc be9c3cabb4 Fixed DirectSound and OpenH323 modules for Windows.
git-svn-id: http://yate.null.ro/svn/yate/trunk@440 acf43c95-373e-0410-b603-e72c3f656dc1
2005-07-09 18:27:49 +00:00
paulc 88287791d7 Fixed minor bug when compiling in debug mode.
git-svn-id: http://yate.null.ro/svn/yate/trunk@407 acf43c95-373e-0410-b603-e72c3f656dc1
2005-06-17 17:15:58 +00:00
paulc d6b03a2919 no message
git-svn-id: http://yate.null.ro/svn/yate/trunk@378 acf43c95-373e-0410-b603-e72c3f656dc1
2005-05-30 15:13:02 +00:00
paulc ab4ae958d5 Direct Sound channel, thread fixes
git-svn-id: http://yate.null.ro/svn/yate/trunk@347 acf43c95-373e-0410-b603-e72c3f656dc1
2005-05-14 01:38:58 +00:00
paulc b52a90a618 Updated copyright years, fixed %ll formatting.
git-svn-id: http://yate.null.ro/svn/yate/trunk@320 acf43c95-373e-0410-b603-e72c3f656dc1
2005-04-29 22:05:07 +00:00
paulc 1e4e75ac2b Countless changes.
git-svn-id: http://yate.null.ro/svn/yate/trunk@318 acf43c95-373e-0410-b603-e72c3f656dc1
2005-04-28 22:46:59 +00:00
paulc 1fa66f6d66 *** empty log message ***
git-svn-id: http://yate.null.ro/svn/yate/trunk@296 acf43c95-373e-0410-b603-e72c3f656dc1
2005-04-19 00:45:40 +00:00
paulc 4ae0904411 no message
git-svn-id: http://yate.null.ro/svn/yate/trunk@288 acf43c95-373e-0410-b603-e72c3f656dc1
2005-04-11 21:20:12 +00:00
paulc 5d77d22865 no message
git-svn-id: http://yate.null.ro/svn/yate/trunk@285 acf43c95-373e-0410-b603-e72c3f656dc1
2005-04-11 00:56:55 +00:00
paulc 9459c52dcd *** empty log message ***
git-svn-id: http://yate.null.ro/svn/yate/trunk@284 acf43c95-373e-0410-b603-e72c3f656dc1
2005-04-10 21:52:31 +00:00
paulc 8db5c6f0d4 no message
git-svn-id: http://yate.null.ro/svn/yate/trunk@283 acf43c95-373e-0410-b603-e72c3f656dc1
2005-04-10 21:42:49 +00:00
paulc d35d4d6b4a Separated non-engine related classes in their own include file.
git-svn-id: http://yate.null.ro/svn/yate/trunk@279 acf43c95-373e-0410-b603-e72c3f656dc1
2005-04-08 10:55:22 +00:00
paulc 60ec9fec0b Added VC++6 projects and lots of porting changes
git-svn-id: http://yate.null.ro/svn/yate/trunk@272 acf43c95-373e-0410-b603-e72c3f656dc1
2005-04-02 00:49:38 +00:00