Комментарий в справочном источнике дает некоторое представление:
// To be used on methods that sink reverse P/Invoke calls.
// This attribute is a CoreCLR-only security measure, currently ignored by the desktop CLR.
[AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = false)]
public sealed class AllowReversePInvokeCallsAttribute : Attribute
{
public AllowReversePInvokeCallsAttribute()
{
}
}
CoreCLR - версия CLR, которая управляет Silverlight.Большой на песочнице.Вы не найдете его вообще в настольной версии, но везде в сборках Silverlight.Примерами являются класс MS.Internal.FrameworkCallbacks и пространство имен System.Windows.Посмотрите на Reflector.Идея ясна: когда CLR выполняет маршалинг вызова от нативного к управляемому, он проверяет, ожидается ли запуск управляемого метода.