-
Notifications
You must be signed in to change notification settings - Fork 27
/
Copy pathAt-the-Junction-of-Managed-and-Unmanaged-Worlds.xml
14 lines (12 loc) · 2.6 KB
/
At-the-Junction-of-Managed-and-Unmanaged-Worlds.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<Talk>
<Id>At-the-Junction-of-Managed-and-Unmanaged-Worlds</Id>
<SpeakerIds>
<SpeakerId>Ivan-Migalev</SpeakerId>
</SpeakerIds>
<Title>На стыке управляемого и неуправляемого миров</Title>
<Description>.NET считается «управляемой» платформой — это означает, что код выполняется в виртуальной машине, которая должна следить за соблюдением некоторых правил (корректность адресов объектов, к которым обращается программа, отсутствие выхода за пределы массивов). На такой платформе программисту живётся очень удобно — ровно до тех пор, пока ему не приходится начать интеропиться с кодом, написанным вне платформы. Сейчас, с распространением .NET (Core) на новые платформы, это становится ещё более важным — потому для новых платформ ещё не написано такого большого количества managed-библиотек, и поэтому частенько приходится делать свои обёртки для нативного кода.
К счастью, .NET обладает богатым инструментарием, который позволяет практически прозрачно общаться с нативным кодом. Этот доклад познакомит вас с основными техниками вызова нативных функций из .NET-приложений, особенностями размещения в памяти структур, которыми может обмениваться управляемый и неуправляемый код, а также некоторыми подводными камнями, которые обязательно оказываются на пути у тех, кто начинает работу с нативным кодом из .NET.
В докладе Иван будет говорить обо всех современных реализациях .NET: о .NET Framework, Mono и .NET Core.</Description>
<SlidesUrl>https://github.com/DotNetRu/AuditBlobs/blob/master/slides/At-the-Junction-of-Managed-and-Unmanaged-Worlds.pdf</SlidesUrl>
<VideoUrl>https://www.youtube.com/watch?v=-KBkAOtvIUM</VideoUrl>
</Talk>