You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
provide a FBUF_STATIC_INITIALIZER_POINTER() macro
to simplify (and speedup) initialization of a static fbuf structure.
This is handy when you have a preallocated structure which contains an fbuf_t member
(not a pointer) and we want to set custom parameters without having to call multiple functions to do that
(and obviously FBUF_STATIC_INITIALIZER can't be used because we are not in a declaration statement)
ensure returning 0 on success
the ht_call callback can return 1 to commence removal of the processed
item, but ht_call() itself should return 0 because it succeeded
if the table is being grown we need to wait for it to finish
if a thread is accessing a list from the previous items array and later locking the list
is not safe because there is a race and the list (or the old items array) might be released
by the thread growing the table before the list is being locked by the initial thread
fixed the algorithm to cope with some corner cases triggered by stres…
…s tests
the library now looks really safe and has been tested under heavy concurrency load