Richard Frith-MacDonald
1a353d2514
don't try to cleanup on main thread exit
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29478 72102866-910b-0410-8b05-ffd578937521
2010-02-04 18:04:13 +00:00
Richard Frith-MacDonald
367d552a3b
use usleep for small intervals
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29469 72102866-910b-0410-8b05-ffd578937521
2010-02-03 09:45:45 +00:00
Richard Frith-MacDonald
e9cdf2ec94
windows tweaks
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29468 72102866-910b-0410-8b05-ffd578937521
2010-02-03 09:31:59 +00:00
Richard Frith-MacDonald
a14a8a49b6
exit when main thread exits
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29462 72102866-910b-0410-8b05-ffd578937521
2010-02-02 14:25:58 +00:00
Richard Frith-MacDonald
b8ccc9459d
thread termination fixups
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29461 72102866-910b-0410-8b05-ffd578937521
2010-02-01 21:08:45 +00:00
Richard Frith-MacDonald
e4a6d046be
cleanups
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28787 72102866-910b-0410-8b05-ffd578937521
2009-10-10 08:16:17 +00:00
Richard Frith-MacDonald
77a7398d4a
fixup to work with old compilers
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28750 72102866-910b-0410-8b05-ffd578937521
2009-09-27 19:31:31 +00:00
Richard Frith-MacDonald
65fb6dd5ac
minor simplification
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28645 72102866-910b-0410-8b05-ffd578937521
2009-09-09 08:21:51 +00:00
Richard Frith-MacDonald
b3bb5d96da
thread exit improvements
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28638 72102866-910b-0410-8b05-ffd578937521
2009-09-08 20:32:52 +00:00
Richard Frith-MacDonald
a456517b42
Yield if asked to sleep
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28636 72102866-910b-0410-8b05-ffd578937521
2009-09-08 17:56:58 +00:00
David Chisnall
29faf077e7
Moved registration of runtime multithreaded handler to after the creation of the main thread's NSThread object. This fixes a potential issue where the runtime is already in multithreaded mode, calls the handler, and NSException crashes dereferencing the thread object.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28609 72102866-910b-0410-8b05-ffd578937521
2009-09-05 17:28:01 +00:00
David Chisnall
d7a877b871
* Source/NSLock.m
...
* Headers/Foundation/NSLock.h
Completely rewritten implementations of NSLock.h classes. These are now
faster, more complete, OS X-compatible, and most importantly actually
work. The old ones, for example, called functions that were not
implemented on Windows.
* Source/NSThread.m
Call pthread functions directly in NSThread instead of via the libobjc
abstraction layer. Also fixed a few issues, such as GC not being
initialized properly for NSThread subclasses that override -main (Javaism
supported by OS X) and tidies up the code in several places, removing
premature optimizations, especially those that introduce a test for an
unlikely case at the start of a method and thus slow everything down.
As a result of this change, GNUstep now depends on an implementation of
POSIX threads. This is included as standard on all modern UNIX systems,
and as an option on less-modern UNIX systems and non-UNIX systems,
including Windows. If you are building GNUstep on Windows, please install
the pthreads-win32 package, available from:
http://sourceware.org/pthreads-win32/
PLEASE TEST THIS! There may be some code that depended on the old
behaviour. I have been running the new NSLock implementation on FreeBSD
for a few weeks without issue; please report to me any problems that you
have on your platform.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28598 72102866-910b-0410-8b05-ffd578937521
2009-09-02 13:03:13 +00:00
Richard Frith-MacDonald
8904aada4f
Fix race condition
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28298 72102866-910b-0410-8b05-ffd578937521
2009-05-24 04:22:09 +00:00
Richard Frith-MacDonald
24d43481a8
Updates for 10.5 API changes
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27962 72102866-910b-0410-8b05-ffd578937521
2009-02-23 20:42:32 +00:00
Richard Frith-MacDonald
b732dc843b
fix bugs #25545 and #25546
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27832 72102866-910b-0410-8b05-ffd578937521
2009-02-10 14:35:12 +00:00
Richard Frith-MacDonald
ec501bcde4
Attempt to fix thread registration for GC (bug #25541 )
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27829 72102866-910b-0410-8b05-ffd578937521
2009-02-10 12:16:40 +00:00
Richard Frith-MacDonald
940de12cab
More garbage collection updates/fixes.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27590 72102866-910b-0410-8b05-ffd578937521
2009-01-13 15:57:38 +00:00
Richard Frith-MacDonald
952af9c197
garbage collection fixups
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27578 72102866-910b-0410-8b05-ffd578937521
2009-01-12 12:48:46 +00:00
Richard Frith-MacDonald
ac3eb1fbce
Make this a bit more robust
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@26864 72102866-910b-0410-8b05-ffd578937521
2008-09-23 08:10:59 +00:00
Richard Frith-MacDonald
0ecc6aba60
try to make tread performer firing more robust
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@26856 72102866-910b-0410-8b05-ffd578937521
2008-09-18 08:22:53 +00:00
Richard Frith-MacDonald
b2b14398d2
allow developers more time to adapt to LGPLv3
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@26606 72102866-910b-0410-8b05-ffd578937521
2008-06-08 10:38:33 +00:00
Richard Frith-MacDonald
04be752037
Close pipes on invalidation
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@26341 72102866-910b-0410-8b05-ffd578937521
2008-03-18 05:55:32 +00:00
Richard Frith-MacDonald
f7fd0a7bec
More thread changes for MacOS-X compatibility
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@26340 72102866-910b-0410-8b05-ffd578937521
2008-03-18 05:45:05 +00:00
Richard Frith-MacDonald
5d8174ac84
Complete update of NSThread for MacOS-X 10.5 compatibility. Needs testing.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@26332 72102866-910b-0410-8b05-ffd578937521
2008-03-17 15:23:11 +00:00
Richard Frith-MacDonald
98b7ad73d0
Fix typo in comment
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@26041 72102866-910b-0410-8b05-ffd578937521
2008-02-08 13:35:50 +00:00
Richard Frith-MacDonald
9e1a7d5870
Clarify thread detach error
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25880 72102866-910b-0410-8b05-ffd578937521
2008-01-06 08:56:59 +00:00
Richard Frith-MacDonald
a6c91ff216
Implement stack size limit. Add workaround for versions of libobjc which
...
leak thread memory.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25790 72102866-910b-0410-8b05-ffd578937521
2007-12-27 07:02:27 +00:00
Richard Frith-MacDonald
8dc5f2ad2f
destroy graphics context on thread exit.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25787 72102866-910b-0410-8b05-ffd578937521
2007-12-25 20:31:24 +00:00
Richard Frith-MacDonald
7adfdadc0e
Improve error message on thread creation failure
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25784 72102866-910b-0410-8b05-ffd578937521
2007-12-25 14:13:18 +00:00
Richard Frith-MacDonald
c6e8018204
improve debug/error logging a little.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25780 72102866-910b-0410-8b05-ffd578937521
2007-12-24 20:51:19 +00:00
Richard Frith-MacDonald
af737363bc
Fix memory leak.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25779 72102866-910b-0410-8b05-ffd578937521
2007-12-24 17:31:52 +00:00
Richard Frith-MacDonald
9c36ec10dd
Improved stacktrace/debug handling.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25667 72102866-910b-0410-8b05-ffd578937521
2007-12-03 14:13:57 +00:00
Richard Frith-MacDonald
635c255ed2
NSThread updates and cleanup
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25608 72102866-910b-0410-8b05-ffd578937521
2007-11-25 14:49:05 +00:00
Richard Frith-MacDonald
cc2f12f523
Implement part of MacOS 10.5 additions for NSThread.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25607 72102866-910b-0410-8b05-ffd578937521
2007-11-25 14:25:26 +00:00
Richard Frith-MacDonald
62559023b9
Update to GPL3 and LGPL3
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25482 72102866-910b-0410-8b05-ffd578937521
2007-09-14 11:36:11 +00:00
Richard Frith-MacDonald
57a828c7c7
Header tidyups, particularly updating of version compatibility macros.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@24000 72102866-910b-0410-8b05-ffd578937521
2006-10-31 07:05:46 +00:00
Richard Frith-MacDonald
0ebe68ae48
More code tidyups and NSError updates.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@23921 72102866-910b-0410-8b05-ffd578937521
2006-10-20 10:56:27 +00:00
Richard Frith-MacDonald
eae859d1c7
Updates to reduce global namespace pollution. Plenty more remaining.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@23795 72102866-910b-0410-8b05-ffd578937521
2006-10-09 14:00:01 +00:00
Richard Frith-MacDonald
087e9db5e6
avoid spurious compiler warnings
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@23027 72102866-910b-0410-8b05-ffd578937521
2006-06-04 06:42:10 +00:00
Richard Frith-MacDonald
3d99e46faf
Changes for NSStream support, especially in mingw32 ... not yet complete.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@22693 72102866-910b-0410-8b05-ffd578937521
2006-03-21 15:33:05 +00:00
Richard Frith-MacDonald
c2e8c881e7
Some cleanup in preparation for next release.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@22618 72102866-910b-0410-8b05-ffd578937521
2006-03-08 11:28:59 +00:00
Richard Frith-MacDonald
ae1fce0b80
make housekeeping timer more transparent and remove deprecated code
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@22593 72102866-910b-0410-8b05-ffd578937521
2006-03-04 06:47:56 +00:00
Richard Frith-Macdonald
178aecf1db
Catch autoreleased objects during thread exit.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@22333 72102866-910b-0410-8b05-ffd578937521
2006-01-19 06:15:27 +00:00
Richard Frith-Macdonald
06981169ed
Fixes for 64bit systems .. mostly cosmetic avoidance of compiler warnings.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@22282 72102866-910b-0410-8b05-ffd578937521
2006-01-10 10:29:11 +00:00
Richard Frith-Macdonald
469789711a
Fix documentation error.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@21935 72102866-910b-0410-8b05-ffd578937521
2005-11-01 15:14:59 +00:00
Richard Frith-Macdonald
bfb6ebd9bc
Use __MINGW32__ rather than __MINGW__ because gcc does that too.
...
NB. It seems some recent patches put ___MINGW32__ in the public headers ...
that needs to be fixed as the headers should be system independent!
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@21795 72102866-910b-0410-8b05-ffd578937521
2005-10-11 19:09:26 +00:00
Richard Frith-Macdonald
7c4a87c2c0
Recommit gcc-4 tweaks
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@21431 72102866-910b-0410-8b05-ffd578937521
2005-07-08 11:48:37 +00:00
Richard Frith-Macdonald
9e292d78c1
Revert subtly broken change
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@21391 72102866-910b-0410-8b05-ffd578937521
2005-07-01 17:31:07 +00:00
Richard Frith-Macdonald
71e5005964
Tweaks to avoid compiler warnings with gcc-4
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@21390 72102866-910b-0410-8b05-ffd578937521
2005-07-01 12:29:50 +00:00
Adam Fedor
fcc13ccd0f
* Update FSF Address.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@21245 72102866-910b-0410-8b05-ffd578937521
2005-05-22 03:32:16 +00:00