<div dir="ltr"><br>
<div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div class="im">
fakeroot-ng prefers to use std::unordered_map, if it&#39;s available. If not, __fnu_cxx::hash_map would do. If even that&#39;s not available, it would grudgingly use std::map, even though that one has worse performance characteristics.<br>
</div></blockquote><div><br>Another excellent example, indeed.<br><br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div class="im">
</div><div class="im"><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
I remember guessing that it was probably not considered a big problem on Windows because Windows didn&#39;t have shared libraries, so memory would be wasted in any case.<br>
</blockquote>
<br></div>
I&#39;m not sure where you got that one. Even assuming you meant &quot;share runtime memory&quot;, and not &quot;shared code&quot;, Windows does have shared libraries.</blockquote><div><br>Eh, this is noise in this thread - sorry for making that comment.<br>
<br>I admit I am not up-to-date (but my recollection refers to years ago, too). Windows DLLs were not equivalent to UNIX/Linux shared libraries - they contained &quot;relocatable&quot; and not &quot;position-independent&quot; code, and each process had its own copy mapped into memory (yes, runtime memory).<br>
<br>Between myself and Shachar, Shachar is much more likely to be up-to-date and better versed in details, so believe him. My comment was not essential to this thread, anyway, and can safely be ignored.<br> <br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
 It is true that you are discouraged from using non-system DLLs from a shared location, unless you jump through the horrible hoops called &quot;manifests&quot;, but still, a single application install would be expected to use only one version of a DLL, and its text and read only segments would, generally, be shared between all executables using it.</blockquote>
</div><br clear="all"><br>-- <br>Oleg Goldshmidt | <a href="mailto:oleg@goldshmidt.org">oleg@goldshmidt.org</a><br>
</div>