Commit graph

186 commits

Author SHA1 Message Date
Richard Frith-Macdonald
25e60c6301 add missing method declaration 2022-07-11 10:20:16 +01:00
Richard Frith-Macdonald
71f24ca382 Add support for thread naming 2022-07-06 15:05:36 +01:00
Richard Frith-Macdonald
b23777adfa When setting to use defaults for config, update config based on current defs 2021-11-09 11:03:10 +00:00
Richard Frith-Macdonald
c2c1b93bac fix asignment of wrong class 2021-05-27 21:45:22 +01:00
Richard Frith-Macdonald
ab83081490 Allow the class of the links in a link store to be controlled 2021-05-22 12:27:45 +01:00
Richard Frith-Macdonald
3b16cbb283 Add -getObjectRetained and -putObjectConsumed: methods 2021-05-22 11:09:12 +01:00
Richard Frith-Macdonald
5cf55f34c2 Improvde documentation 2021-02-26 16:01:07 +00:00
Richard Frith-Macdonald
e0ba8684dc Consolodate repeated code into a function and optimise a little 2021-02-23 15:53:58 +00:00
Richard Frith-Macdonald
2e707603e5 fix error in comment 2021-02-23 13:57:10 +00:00
Richard Frith-Macdonald
509d365349 Return link information when adding objects to list 2021-02-23 13:53:48 +00:00
Richard Frith-Macdonald
2a1ec7970c fix potential nul pointer dereference 2021-01-14 09:29:42 +00:00
Richard Frith-Macdonald
6eb08935ea Simplify by assuming we will run in a multithreaded environment 2021-01-14 09:29:06 +00:00
Richard Frith-Macdonald
99e01fe21e Cope with objects which can't be copied (ie -copy returns the receiver). 2019-08-08 15:02:04 +01:00
Richard Frith-Macdonald
94eb232b96 allow programmatic setting of config where defaults don't exist 2019-04-16 12:23:28 +01:00
Richard Frith-Macdonald
42e7c87f0b fix locking error 2019-04-16 12:02:26 +01:00
Richard Frith-Macdonald
573793ce5a Allow caches to be configured programmatically 2019-04-16 11:00:05 +01:00
Richard Frith-Macdonald
3bf5d81b15 Improvements for subclassing 2018-03-27 18:45:51 +01:00
Richard Frith-Macdonald
0d411fb45a Fix failure to use argument for link store insertion 2017-10-17 17:13:54 +01:00
Richard Frith-Macdonald
8cd904225c Improve documentation of -terminate: method 2017-07-13 09:41:17 +01:00
Richard Frith-Macdonald
859dc793bf Improve timeout waiting for thread to terminate 2017-07-13 09:32:58 +01:00
Richard Frith-Macdonald
2378e82aaf make -terminate: method usable from other threads 2017-07-13 08:56:55 +01:00
Richard Frith-MacDonald
29f1bab93e add code to allow refreshing of existing items in cache
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@40424 72102866-910b-0410-8b05-ffd578937521
2017-03-28 10:58:51 +00:00
Richard Frith-MacDonald
82f18a1372 Allow very large FIFO for buffering extremely high throughput systems.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@40193 72102866-910b-0410-8b05-ffd578937521
2016-11-07 17:47:35 +00:00
Richard Frith-MacDonald
f73a0a2cb1 fix to nil-out item after release
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@39311 72102866-910b-0410-8b05-ffd578937521
2016-01-26 14:40:30 +00:00
Riccardo Mottola
f37d55d564 add GSFIFO to mac project
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@39191 72102866-910b-0410-8b05-ffd578937521
2015-11-23 16:01:15 +00:00
Riccardo Mottola
78dcc717e2 add GS MemoryReporting extensions for NSObject missing on Mac so that the whole GS base additions are not needed
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@39190 72102866-910b-0410-8b05-ffd578937521
2015-11-23 15:34:29 +00:00
Richard Frith-MacDonald
16b09c5202 add option for writing a whole block in one go
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@39039 72102866-910b-0410-8b05-ffd578937521
2015-10-07 13:54:54 +00:00
Richard Frith-MacDonald
33be15ea6c fix missing declaration
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@39020 72102866-910b-0410-8b05-ffd578937521
2015-10-02 10:34:43 +00:00
Richard Frith-MacDonald
6101a48351 fxup bad declaration
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38857 72102866-910b-0410-8b05-ffd578937521
2015-08-06 19:44:31 +00:00
Richard Frith-MacDonald
92a1962589 Add a few methods
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38846 72102866-910b-0410-8b05-ffd578937521
2015-07-29 14:34:58 +00:00
Richard Frith-MacDonald
08cf714574 New class
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38845 72102866-910b-0410-8b05-ffd578937521
2015-07-29 08:07:44 +00:00
Richard Frith-MacDonald
e2d66ee254 add startup and shutdown methods
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38844 72102866-910b-0410-8b05-ffd578937521
2015-07-28 20:08:10 +00:00
Richard Frith-MacDonald
d2d36aaa35 fix uninitialised variable
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38843 72102866-910b-0410-8b05-ffd578937521
2015-07-28 19:24:40 +00:00
Richard Frith-MacDonald
288e83617f Add support for setting the thread class
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38842 72102866-910b-0410-8b05-ffd578937521
2015-07-28 19:16:21 +00:00
Niels Grewe
6f267319e3 Optionally allow the caller to specify the time it wants to block on an
empty FIFO. This supplements the existing method of having a timeout on
the FIFO, and does not raise an excepion when the wait time is too long.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38814 72102866-910b-0410-8b05-ffd578937521
2015-07-17 20:08:38 +00:00
Niels Grewe
74d1c92669 Implement -sizeInBytesExcluding: on GSFIFO
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38809 72102866-910b-0410-8b05-ffd578937521
2015-07-16 12:57:56 +00:00
Richard Frith-MacDonald
3859653420 fix size of cache reporting
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38806 72102866-910b-0410-8b05-ffd578937521
2015-07-16 09:59:22 +00:00
Richard Frith-MacDonald
3c90224c87 Change method name as suggested by Niels
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38804 72102866-910b-0410-8b05-ffd578937521
2015-07-16 08:56:31 +00:00
Richard Frith-MacDonald
3085456143 experimental changes to memory usagfe accounting
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38800 72102866-910b-0410-8b05-ffd578937521
2015-07-15 14:48:19 +00:00
Richard Frith-MacDonald
e032b577af remove some unnecessary code
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38512 72102866-910b-0410-8b05-ffd578937521
2015-05-19 14:29:54 +00:00
Richard Frith-MacDonald
f2fec29ccc simplify GSIOThread exposure and locking
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38511 72102866-910b-0410-8b05-ffd578937521
2015-05-19 14:03:31 +00:00
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
Wolfgang Lux
a5aaf86a79 Fix incorrect comparison introduced in last commit
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38222 72102866-910b-0410-8b05-ffd578937521
2014-12-02 11:24:51 +00:00
Riccardo Mottola
951b791420 fix capitalization
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38206 72102866-910b-0410-8b05-ffd578937521
2014-11-26 23:26:56 +00:00
Riccardo Mottola
21b32d3ed9 enable exceptions
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38205 72102866-910b-0410-8b05-ffd578937521
2014-11-26 23:14:15 +00:00
Riccardo Mottola
e88e1f553e enable exceptions
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/performance/trunk@38204 72102866-910b-0410-8b05-ffd578937521
2014-11-26 23:02:56 +00:00