diff options
author | 2016-09-22 09:57:47 +0200 | |
---|---|---|
committer | 2016-09-22 09:57:47 +0200 | |
commit | 6800e3d45e053b191cadb1e4da913a5dbfc189aa (patch) | |
tree | ecca4ee8fe71f746209b9e33ca2110f9ba5dfc9d /src/csharp/Grpc.Core | |
parent | 4d2df96ff58429961f7b63bdd0c9ceeea1d2fe44 (diff) |
update the comment to reflect current state
Diffstat (limited to 'src/csharp/Grpc.Core')
-rw-r--r-- | src/csharp/Grpc.Core/Internal/UnmanagedLibrary.cs | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/csharp/Grpc.Core/Internal/UnmanagedLibrary.cs b/src/csharp/Grpc.Core/Internal/UnmanagedLibrary.cs index 0b934f823b..31e1402849 100644 --- a/src/csharp/Grpc.Core/Internal/UnmanagedLibrary.cs +++ b/src/csharp/Grpc.Core/Internal/UnmanagedLibrary.cs @@ -44,10 +44,9 @@ namespace Grpc.Core.Internal { /// <summary> /// Represents a dynamically loaded unmanaged library in a (partially) platform independent manner. - /// An important difference in library loading semantics is that on Windows, once we load a dynamic library using LoadLibrary, - /// that library becomes instantly available for <c>DllImport</c> P/Invoke calls referring to the same library name. - /// On Unix systems, dlopen has somewhat different semantics, so we need to use dlsym and <c>Marshal.GetDelegateForFunctionPointer</c> - /// to obtain delegates to native methods. + /// First, the native library is loaded using dlopen (on Unix systems) or using LoadLibrary (on Windows). + /// dlsym or GetProcAddress are then used to obtain symbol addresses. <c>Marshal.GetDelegateForFunctionPointer</c> + /// transforms the addresses into delegates to native methods. /// See http://stackoverflow.com/questions/13461989/p-invoke-to-dynamically-loaded-library-on-mono. /// </summary> internal class UnmanagedLibrary |