It is unwise to post sections of the .net source code to this mailing list. As technically anyone who has seen the dotnet framework code can&#39;t contribute to those parts of the mono project. Seeing as most of the mono developers read this list you may inadvertently stop them from being able to further develop mono.<div>
<br></div><div>See <a href="http://mono-project.com/Contributing">http://mono-project.com/Contributing</a> for more info about these rules.<br><br><div class="gmail_quote">On Thu, Jul 21, 2011 at 3:41 PM, Vincent Povirk <span dir="ltr">&lt;<a href="mailto:madewokherd@gmail.com">madewokherd@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">mono/metadata/icall-def.h contains references to the implementations<br>
of internal calls. Apparently, that method is mono_monitor_enter,<br>
implemented in monitor.c.<br>
<div><div></div><div class="h5"><br>
On Wed, Jul 20, 2011 at 9:54 PM, imays &lt;<a href="mailto:imays@naver.com">imays@naver.com</a>&gt; wrote:<br>
&gt; I got a question how Monitor.Enter works. I investigated .net framework<br>
&gt; source code, and it shows this only:<br>
&gt;<br>
&gt;        [System.Security.SecurityCritical]  // auto-generated<br>
&gt;        [ResourceExposure(ResourceScope.None)]<br>
&gt;        [MethodImplAttribute(MethodImplOptions.InternalCall)]<br>
&gt;        private static extern void ReliableEnter(Object obj, ref bool<br>
&gt; lockTaken);<br>
&gt;<br>
&gt; I guess Monitor.Enter implementation is platform dependent, so I browsed<br>
&gt; Mono source code and I gave up :(<br>
&gt;<br>
&gt; Yes, a critical section assigned for each System.Object instance may solve,<br>
&gt; but, I don&#39;t think the actual Monitor.Lock is written like this, because<br>
&gt; creating a critical section for each System.Object will cost unlimitedly.<br>
&gt; (Win32 does not allow billions of critical section objects in a process!)<br>
&gt;<br>
&gt; Does anybody know how Monitor.Lock works? Please reply. Thanks in advance.<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; View this message in context: <a href="http://mono.1490590.n4.nabble.com/How-does-Monitor-Enter-work-tp3682685p3682685.html" target="_blank">http://mono.1490590.n4.nabble.com/How-does-Monitor-Enter-work-tp3682685p3682685.html</a><br>

&gt; Sent from the Mono - General mailing list archive at Nabble.com.<br>
&gt; _______________________________________________<br>
&gt; Mono-list maillist  -  <a href="mailto:Mono-list@lists.ximian.com">Mono-list@lists.ximian.com</a><br>
&gt; <a href="http://lists.ximian.com/mailman/listinfo/mono-list" target="_blank">http://lists.ximian.com/mailman/listinfo/mono-list</a><br>
&gt;<br>
_______________________________________________<br>
Mono-list maillist  -  <a href="mailto:Mono-list@lists.ximian.com">Mono-list@lists.ximian.com</a><br>
<a href="http://lists.ximian.com/mailman/listinfo/mono-list" target="_blank">http://lists.ximian.com/mailman/listinfo/mono-list</a><br>
</div></div></blockquote></div><br></div>