<div dir="auto"><div><div class="gmail_quote"><div dir="ltr">Am Do., 3. Jan. 2019, 13:25 hat Benito van der Zander <<a href="mailto:benito@benibela.de">benito@benibela.de</a>> geschrieben:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>
<div id="m_1978264264517136581smartTemplate4-template">Hi,<br>
<br>
<p>
</p><blockquote type="cite"><br>
<br>
The issue I was talking about is the fact that atomic
operations do function as global memory synchronisation
operations across all cores (at least not on all
architectures). If core 1 atomatically increases refcount to
two and you "then" load the same refcount normally (without an
atomic read-modify-exchange oepration) on another core, this
other core may still see the old value.
</blockquote>
<p></p>
</div>
<div><br>
</div>
<div>Is that really so? <br>
</div>
<div><br>
</div>
<div>The ref count is stored in the same memory block as the string
itself.<br>
</div>
<div><br>
</div>
<div>If core 2 could not see the new ref count, it could not see
what is in the string and thus not use the string for anything . </div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">Nobody is talking about the string content. It's only about the reference count right now and that one *can* differ between cores if that isn't correctly handled (even if the string content stays the same). </div><div dir="auto"><br></div><div dir="auto">Regards, </div><div dir="auto">Sven </div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
</blockquote></div></div></div>