Hi All,

I have recently been working on RCU lib and Hash Lib. I activated RCU in the Hash library and want to observe one thing.

Here is the case:
I want to check RCU handles multiple lookups and frees just selected elements. I realize that reporting quiescent state releases all elements, and I cannot choose the unused ones.

Here is an example:

I filled the hash table with some data and then looked up the first five elements in the reader thread. Assume that three are used throughout the whole thread life, but I only need 2 of them in that little time.

If I delete these five elements in the writer, the receiver still points to the actual data. I wanted to add some elements and free two deleted elements that will not be used. So I report the quiescent state. Is there a way to hold these three elements (the reader still references that)? As I understood, I can't hold any reference to the data if I report the quiescent state in the reader.

Thank you

--
-A. Ömer Yamaç

Reply via email to