Çok benzer bir soruyu bu answer buldum. Sorun, Kilitli İşlemlerin 64 bit işletim sistemi üzerindeki kernel32 (veya başka herhangi bir) dll'den dışa aktarılmamasıdır (bkz. Ör. http://blog.kalmbachnet.de/?postid=46).
64 bit .NET işleminde bir bellek bloğunda Kilitli işlevleri nasıl arayabileceğimin başka bir yolu var mı?
Kilitli işlevleri çağrılan dışa aktarılmış işlevlerle kendi C Dll'imi yazmaya çalışıyorum ve .NET'ten PInvoke. –
@AlexFarber Mükemmel nokta! Bu soruyu sormak için sadece utanıyordum :) Derleyici intrinsic Interlocked fonksiyonlarının ASM uygulamasını kolayca öğrenebilir miyim (örneğin [http://msdn.microsoft.com/en-us/library/2ddez55b(v = vs.80) .aspx] (http://msdn.microsoft.com/en-us/library/2ddez55b (v = vs.80) .aspx))? Bu yüzden ASM kodunu kendim yeniden icat etmek zorunda değilim. – Jan
Bunu yapmanıza gerek yok, sadece yerel Dll'den gerekli işlevleri çağırın, derleyici gerisini halledecektir. İhtiyacınız olan her kilitli işlev için, Kilitli işlevini çağıran dışa aktarılmış Dll işlevini yazarım. –