Christian Thaeter
7ef1bab914
premature fix for the threadwrapper test
...
Added some more fuzz and sleeping to the test calculation to have a actual
chance to fail when something is not well locked.
Using a premature classlock, locking instances was insufficient.
2010-02-03 10:45:58 +01:00
Christian Thaeter
01839d4e48
update for nobug-201002.1
2010-02-03 10:38:12 +01:00
Michael Ploujnikov
73f1bbae2a
added two sync tests
...
one with a single thread and one with 100 randomly sleeping ones
2010-02-02 20:44:35 -05:00
Michael Ploujnikov
6d053d3f84
show the state name string
2010-02-01 16:51:27 -05:00
Michael Ploujnikov
8588fa2b9c
it is more proper to use cond_sync flags for *CONDITION_SECTIONs
2010-02-01 07:25:49 -05:00
Michael Ploujnikov
b799321dff
add a threads/threadpool NOBUG flag hierarchy
...
and remove redundant/errorneous flag initializations as a result
also use the test flag from logging.h
2010-02-01 07:25:06 -05:00
Michael Ploujnikov
c57c02ea45
replace an old test with a compile-only one which spawns way too many threads
2010-01-31 20:05:05 -05:00
Michael Ploujnikov
79f8481f99
increase the delay in threads to 10ms
2010-01-31 19:46:48 -05:00
Michael Ploujnikov
64ab9f6bf7
wrap prime test in usleep() to make the thread likely to be re-scheduled
2010-01-31 13:33:47 -05:00
Christian Thaeter
014c83ff5a
PTHREAD_ONCE_INIT can be a macro, fast init trick doesn't work then
2010-01-30 08:40:38 +01:00
Christian Thaeter
2b74d82f13
remove threadpool initialization, this is done elsewhere now
...
Subsystem runner/-test is still broken, sometimes segfaults
2010-01-30 07:37:32 +01:00
Christian Thaeter
32d9a9f9ad
FIX: thread-wrapper proxy the catched error up to the joiner
2010-01-30 07:20:09 +01:00
Christian Thaeter
e4e87e8cdd
log error while setting it
2010-01-30 07:20:09 +01:00
Christian Thaeter
87465ff69b
little test-helper cosmetics
2010-01-30 07:20:09 +01:00
Christian Thaeter
dc5ae73626
Log the error passing when joining threads
2010-01-30 07:20:09 +01:00
Michael Ploujnikov
6aacf490a3
add a comile-only test with threads sleeping for random intervals
2010-01-29 22:42:28 -05:00
Michael Ploujnikov
362069ea53
make the process-function test run really quickly
2010-01-29 22:42:28 -05:00
Michael Ploujnikov
f69006aa54
test spawning a bunch of short sleeping threads
2010-01-29 22:42:20 -05:00
Michael Ploujnikov
b87db7eb8f
re-add a test message that I forgot
2010-01-29 22:01:48 -05:00
Michael Ploujnikov
9d7f6a1fce
don't test the kind anymore (too simple)
...
Conflicts:
tests/30backend-threadpool.tests
2010-01-29 21:52:12 -05:00
Michael Ploujnikov
3611fbcf7c
also ignore RESOURCE_ENTER, RESOURCE_STATE and RESOURCE_LEAVE in the test output
2010-01-29 21:49:11 -05:00
Christian Thaeter
74560cdd99
remove some lock sections in thread two_acquire_test
...
After acquired, the caller 'owns' the thread handle and can inspect it,
the associated thread is defined to be waiting for a wakeup signal
(and then one shouldn't do unlocked access to the thread handle)
2010-01-30 03:30:08 +01:00
Christian Thaeter
4aa5380311
FIX: two-threads-acquire test, eternal wait for wakeup signal
2010-01-30 02:57:57 +01:00
Christian Thaeter
812f7112af
FIX: small race in acquire_thread, catching threads out of the void
2010-01-30 02:56:50 +01:00
Christian Thaeter
f57d637b59
Merge commit 'dc87e78590ea86615d3ebe90d23af4548445b941' into backend_devel
...
* commit 'dc87e78590ea86615d3ebe90d23af4548445b941':
add a two-thread acquire test
show the state of the thread in question
minor fixes: remove an old comment and change another
fix the prime test algorithm
use unsigned long for even more digits!
2010-01-30 00:48:04 +01:00
Michael Ploujnikov
dc87e78590
add a two-thread acquire test
...
currently this results in a deadlock between lumiera_threadpool_destroy() and thread_loop()
2010-01-26 17:02:31 -05:00
d61ff56975
Mostly purge the term "EDL" and replace it with "Sequence" or "Session"
2010-01-26 00:36:34 +01:00
Christian Thaeter
6659ab6ac1
Merge remote branch 'ichthyo/thread_integration' into backend_devel
...
* ichthyo/thread_integration:
automatically start the threadpool on demand, similar to NoBug
refactor the C++ thread-wrapper, remove JoinHandle
2010-01-24 16:24:38 +01:00
ede06e63d5
automatically start the threadpool on demand, similar to NoBug
...
but the difference is: threadpool comes up application init i.e. at the begin of main(),
while NoBug comes up in static init already.
2010-01-24 15:48:48 +01:00
93af4ed017
refactor the C++ thread-wrapper, remove JoinHandle
2010-01-24 14:05:32 +01:00
8419f4acb9
Scope queries in general pass unit test
2010-01-23 15:50:46 +01:00
82967191b3
PlacementIndexQueryResolver passes unit test
2010-01-23 15:50:46 +01:00
a9a6bb3951
better store the scope-ID within a query
2010-01-23 15:50:46 +01:00
018801895b
Add some test-dummy MObjects *temporarily* to core tree (Ticket #532 )
2010-01-23 15:50:46 +01:00
f6cf3195cf
* MObjectRef_test pass *
...
This is the integration of some months of work
2010-01-23 15:50:46 +01:00
0f9fc7e3dd
PlacementRef works! that's a milestone. Closes #78
2010-01-23 15:50:46 +01:00
9a6f9b2ba5
PlacementIndex: possibly retaining type information on insert
2010-01-23 15:50:46 +01:00
26972376de
MobjectRef_test passes compiler as a whole
2010-01-23 15:50:45 +01:00
71428ccf6f
activating an MObject ref implemented, passes compiler
2010-01-23 15:50:45 +01:00
e9d641babd
nail down all the MObjectRef equality comparison cases
2010-01-23 15:50:45 +01:00
e04672936a
getting MObjectRef_test partially through the compiler
2010-01-23 15:50:45 +01:00
b32a48f410
Finish definition/documentation of PlacementRef and PlacementIndex
2010-01-23 15:50:45 +01:00
0148532884
scons: bump required NoBug version to 201001.1
2010-01-23 15:46:45 +01:00
Christian Thaeter
f17249713c
WIP: subsystem runner test, still broken
...
using new thread synchronization
Disabled further tests, making one after another working.
Some notes:
* currently running this leads to different outcomes on differnt runs,
there are some races/unsyncronized things left, to be investigated.
* I suggest to make Subsystems joinable, this prolly needs some work in
the error handling department (thread-wrapper.hpp too)
* using nonrecursive/waitable lock, recursive locks are have some bad
taste unless absolutely necessary
* after all a timed lock with polling is not the right approach to check
for subsystem shutdowns, I opted against thread cancelation because of
its programming overhead and complexity. We may refine this and allow
synchronous cancellation (with an approbiate thread flag) in some cases.
2010-01-23 06:57:15 +01:00
Christian Thaeter
8607a4006a
update the thread-wrapper to use the new threading API
...
This removes the explicit Sync things from the thread wraper since
the functionality is almost exactly provided by the backend.
Thread encapsulates a lumiera thread handle now, but this is strictly
optional and might be dropped on the floor (using a temporary as thread).
Thread has a sync() function which allows user controlled syncronous
startup:
Thread("foo", myoperation).sync();
will startup myoperation and only return from the ctor after myoperation
called a matching lumiera_thread_sync().
The related tests need to initialize/destroy the threadpool accordingly
2010-01-23 06:57:14 +01:00
Christian Thaeter
9fc68c9d32
Merge remote branch 'public/nobug201001.2' into backend_devel
...
* public/nobug201001.2:
integrating nobug context passing
updates for nobug 201001.2
Conflicts:
configure.ac
src/lib/condition.h
src/lib/reccondition.h
tests/backend/test-threads.c
2010-01-23 06:56:39 +01:00
Christian Thaeter
c15f2247d7
integrating nobug context passing
...
Somewhat more intrusive than the previous patch,
adds contexts everywhere except for sync.hpp where only default ctors
are used.
2010-01-23 01:40:27 +01:00
Christian Thaeter
8254b3fbda
updates for nobug 201001.2
...
dumping got a new api, surprisingly everything else works...
2010-01-22 23:21:48 +01:00
Michael Ploujnikov
fc15a2ac2c
Merge commit '6f07e4eedc6b624b1f9ae1004ad3e6a77027e028' into second-tp-attempt
...
Conflicts:
src/backend/threads.c
2010-01-20 21:41:14 -05:00
Michael Ploujnikov
a22bb5e54f
show the state of the thread in question
2010-01-20 17:09:37 -05:00