fc4dba4569
Add DSC versions of the _sort function to reverve the sort (DSC=descending).
Patrick Pelissier2018-05-14 23:08:46 +02:00
1d8df98339
Rename undocumented methods _union & _intersect to _sort_union & _sort_intersect as they depend on the sort order.
Patrick Pelissier2018-05-14 22:58:52 +02:00
745aabcfd5
Factorisation of all calls to GET_CMP within the sort functions to a single function.
Patrick Pelissier2018-05-14 22:55:17 +02:00
be100790f1
Uniformize the comparaisons to always be in the same order.
Patrick Pelissier2018-05-14 22:51:07 +02:00
122cf63a3f
Preshift the state by 8, to avoid a shift within the decoder. Rewrite the size_u to avoid a branch.
Patrick Pelissier2018-05-03 22:11:43 +02:00
fafce60f9e
Add method _parse_str NOTE: _in_str, _out_str, _get_str & _parse_str remain to be tested.
Patrick Pelissier2018-05-03 18:06:11 +02:00
e855f27c8c
Add method _parse_str for RBTREE. NOTE: A refactorisation seems needed as all the in_str / parse_str share a lot of the same algorithms. Maybe move them into algo?
Patrick Pelissier2018-05-03 17:59:34 +02:00
2eaeb26d4c
Make Serialization input of array / dict more flexible by supporting space characters within the input.
Patrick Pelissier2018-04-30 11:02:42 +02:00
34d0f8ec81
Add missing function for variant: variant_init_element variant_init_set_element
Patrick Pelissier2018-04-30 10:24:37 +02:00
8fc8decd09
Add m_thread_yield & m_thread_sleep. Rewrite the windows package (it wasn't fully working before) and use functions available since WINDOWS VISTA (increasing minimum supported version).
Patrick Pelissier2018-04-27 20:12:44 +02:00
08f44845ce
Fix issue for SPSC queue: computing the number of elements in the queue is not reliable enough as we can get more than than the size of the queue.
Patrick Pelissier2018-04-26 22:41:11 +02:00
4fbffc4788
Use plain 'unsigned int' instead of 'unsigned long long' for index of SPSC queues. There is no issue as we don't compare the index, but only substract them.
Patrick Pelissier2018-04-26 22:38:43 +02:00
928d6bafcb
Fix issue if there is no working stdatomic / atomic header: definition of atomic_compare_exchange_strong_explicit was wrong. Same for atomic_compare_exchange_weak_explicit
Patrick Pelissier2018-04-19 22:14:16 +02:00
704fb0cbd9
Add a cast to avoid a warning with some compilers (I am not sure the warning was justified).
Patrick Pelissier2018-04-19 22:13:53 +02:00
805b016aee
Reformat test and reduce pressure on thread creation for some tests (Some systems didn't handle so much thread creation).
Patrick Pelissier2018-04-17 23:01:05 +02:00
624a13ba1a
Update version with added parallelism for long computation.
Patrick Pelissier2018-04-17 00:00:56 +02:00
3f5406f1d4
API breakage: worker_sync takes an extra parameter (worker_t) to perform a wait-on-event instead of a busy waiting, reducing consummer ressources.
Patrick Pelissier2018-04-16 23:57:28 +02:00
b684a62f8b
Add more local information about the origin of a failure.
Patrick Pelissier2018-04-16 22:05:17 +02:00