Richard Frith-MacDonald
4b5fcddbc8
Expose GSIOThread, add easier customisation of FIFO, make IOThread pool a little
...
safer with checks for finished/cancelled thread and lock protection of count.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38506 72102866-910b-0410-8b05-ffd578937521
2015-05-16 10:31:08 +00:00
Niels Grewe
30a77897f3
Fix potential race condition when getting the top object without
...
removing it. (previously, we had a window between returning a peeked
pointer and retaining it where another thread might have been able to
pop and release the object).
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38475 72102866-910b-0410-8b05-ffd578937521
2015-05-05 11:32:38 +00:00
Niels Grewe
0f514c0ed4
Add methods to peek at the top/front item in a FIFO without removing it.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38474 72102866-910b-0410-8b05-ffd578937521
2015-05-05 07:57:34 +00:00
Niels Grewe
80276abfa1
Use -autorelease rather than -release when returning objects from a FIFO.
...
Fixes a bug where a returned reference would already be invalid because
the FIFO was the last owner of the object
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38462 72102866-910b-0410-8b05-ffd578937521
2015-04-28 13:28:01 +00:00
Richard Frith-MacDonald
c110b9139e
add code to treat a FIFO as a container
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38286 72102866-910b-0410-8b05-ffd578937521
2015-01-09 15:14:53 +00:00
Richard Frith-MacDonald
f8bd2919a3
tweaks for osx
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38198 72102866-910b-0410-8b05-ffd578937521
2014-11-23 17:30:01 +00:00
Niels Grewe
298f38c629
Fix calculation of the timeout for a cooperating get or put (it was multiplied by 1000 where
...
it should have been divided by 1000)
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@37362 72102866-910b-0410-8b05-ffd578937521
2013-11-05 10:15:00 +00:00
Richard Frith-MacDonald
98874b40a0
64bit format tweaks
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@36995 72102866-910b-0410-8b05-ffd578937521
2013-08-21 08:06:58 +00:00
Richard Frith-MacDonald
d29eb60b77
tweak formats
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@36260 72102866-910b-0410-8b05-ffd578937521
2013-03-04 12:43:53 +00:00
Richard Frith-MacDonald
b003dbbf7f
match stats output to description
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@34059 72102866-910b-0410-8b05-ffd578937521
2011-10-25 11:51:10 +00:00
Richard Frith-MacDonald
2ca74e1017
tweak description and fix comment
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@34058 72102866-910b-0410-8b05-ffd578937521
2011-10-25 11:35:27 +00:00
Richard Frith-MacDonald
bdd2b7ce2c
improve configurability
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@34057 72102866-910b-0410-8b05-ffd578937521
2011-10-25 11:18:36 +00:00
Richard Frith-MacDonald
c04f6b42ca
implement locking for multiple producer/consumer
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@33780 72102866-910b-0410-8b05-ffd578937521
2011-08-24 11:26:01 +00:00
Richard Frith-MacDonald
cd5df0b3ba
fix error in locking
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@33779 72102866-910b-0410-8b05-ffd578937521
2011-08-23 12:45:04 +00:00
Richard Frith-MacDonald
3c056486d0
fix locking error
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@33648 72102866-910b-0410-8b05-ffd578937521
2011-07-27 04:37:50 +00:00
Richard Frith-MacDonald
f7697069ce
more stats updates
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@33285 72102866-910b-0410-8b05-ffd578937521
2011-06-12 11:18:41 +00:00
Richard Frith-MacDonald
f05f968d4d
Add/remove multiple items in one go
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@33284 72102866-910b-0410-8b05-ffd578937521
2011-06-12 08:24:37 +00:00
Richard Frith-MacDonald
7b8ee4e46b
fix off by one error
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@33283 72102866-910b-0410-8b05-ffd578937521
2011-06-12 07:42:22 +00:00
Richard Frith-MacDonald
3b505b67b5
tweak
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@33279 72102866-910b-0410-8b05-ffd578937521
2011-06-11 14:46:27 +00:00
Richard Frith-MacDonald
769d715041
add support for stats
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@33278 72102866-910b-0410-8b05-ffd578937521
2011-06-11 14:41:59 +00:00
Richard Frith-MacDonald
dde5501c2b
use condition locks to avoid polling/spinning
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@33251 72102866-910b-0410-8b05-ffd578937521
2011-06-05 09:14:05 +00:00
Richard Frith-MacDonald
a840b7fbe7
make it clear we don't message items in FIFO
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@33232 72102866-910b-0410-8b05-ffd578937521
2011-06-02 09:24:57 +00:00
Richard Frith-MacDonald
b5bd053574
Add non-blocking FIFO functions/methods
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@33064 72102866-910b-0410-8b05-ffd578937521
2011-05-19 06:53:21 +00:00
Richard Frith-MacDonald
6a4b4db806
add a FIFO implementation
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@32914 72102866-910b-0410-8b05-ffd578937521
2011-04-20 10:22:24 +00:00