System.Runtime.CompilerServices Пространство имен
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет средства, позволяющие разработчикам компиляторов, использующим управляемый код, задавать в метаданных атрибуты, влияющие на поведение среды CLR во время выполнения.
Классы
AccessedThroughPropertyAttribute |
Задает имя свойства, которое обращается к полю с атрибутами. |
AsyncIteratorStateMachineAttribute |
Указывает, является ли метод асинхронным итератором. |
AsyncMethodBuilderAttribute |
Указывает тип конструктора асинхронного метода, который должен применяться компилятором языка для создания типа с атрибутами, используемого в качестве типа возвращаемого значения асинхронного метода. |
AsyncStateMachineAttribute | |
CallConvCdecl |
Указывает, что метод должен использовать соглашение о вызовах |
CallConvFastcall |
Это соглашение о вызовах не поддерживается в данной версии платформы .NET. |
CallConvMemberFunction |
Указывает, что используемое соглашение о вызовах является вариантом функции-члена. |
CallConvStdcall |
Указывает, что метод должен использовать соглашение о вызовах |
CallConvSuppressGCTransition |
Указывает, что метод должен подавлять переход сборки мусора в рамках соглашения о вызове. |
CallConvSwift |
Предоставляет средства, позволяющие разработчикам компиляторов, использующим управляемый код, задавать в метаданных атрибуты, влияющие на поведение среды CLR во время выполнения. |
CallConvThiscall |
Указывает, что метод должен использовать соглашение о вызовах |
CallerArgumentExpressionAttribute |
Указывает, что параметр записывает выражение, переданное для другого параметра в виде строки. |
CallerFilePathAttribute |
Позволяет получить полный путь исходного файла, содержащего вызывающий объект. Это путь к файлу во время компиляции. |
CallerLineNumberAttribute |
Позволяет получить номер строки в исходном файле, в которой вызывается метод. |
CallerMemberNameAttribute |
Позволяет получить имя свойства или метода вызывающего метод объекта. |
CallSite |
Базовый класс динамического места вызова. Этот тип используется как тип параметра для целей динамического узла. |
CallSite<T> |
Тип динамического сайта. |
CallSiteBinder |
Класс, предназначенный для привязки динамических операций к динамическому источнику вызова в среде выполнения. |
CallSiteHelpers |
Класс, содержащий вспомогательные методы для источников вызова динамической среды выполнения (DLR). |
CallSiteOps |
Создает и кэширует правила привязки. |
Closure |
Представляет состояние динамически создаваемого метода во время выполнения. |
CollectionBuilderAttribute |
Предоставляет средства, позволяющие разработчикам компиляторов, использующим управляемый код, задавать в метаданных атрибуты, влияющие на поведение среды CLR во время выполнения. |
CompilationRelaxationsAttribute |
Контролирует точность кода, создаваемого JIT-компилятором среды CLR. |
CompilerFeatureRequiredAttribute |
Указывает, что для расположения, в котором применяется этот атрибут, требуется поддержка определенного компонента компилятором. |
CompilerGeneratedAttribute |
Отличает элемент, созданный компилятором, от элемента, созданного пользователем. Этот класс не наследуется. |
CompilerGlobalScopeAttribute |
Указывает, что класс следует интерпретировать как имеющий глобальную область. |
CompilerMarshalOverride |
Указывает, что измененный экземпляр переменной отличается от ее истинного типа при маршалинге. Этот класс не наследуется. |
ConditionalWeakTable<TKey,TValue> |
Позволяет компиляторам динамически прикреплять поля к управляемым объектам. |
ContractHelper |
Предоставляет методы, которые используются двоичным модулем перезаписи для обработки сбоев контракта. |
CppInlineNamespaceAttribute |
Определяет встроенное пространство имен в C++/CLI. |
CreateNewOnMetadataUpdateAttribute |
Указывает, что при применении обновлений метаданных тип следует заменить, а не обновлять. |
CustomConstantAttribute |
Определяет постоянное значение, которое компилятор может сохранять для поля или параметра метода. |
DateTimeConstantAttribute |
Сохраняет 8-байтовую константу типа DateTime для поля или параметра. |
DebugInfoGenerator |
Создает сведения отладки для лямбда-выражений в дереве выражений. |
DecimalConstantAttribute |
Сохраняет значение константы типа Decimal в метаданных. Этот класс не наследуется. |
DefaultDependencyAttribute |
Содержит подсказку для среды CLR, указывающую вероятность загрузки зависимости. Этот класс используется в зависимой сборке для указания подсказки, которую следует использовать, если родитель не указал атрибут DependencyAttribute. Этот класс не наследуется. |
DependencyAttribute |
Указывает, когда зависимость загружается ссылающейся сборкой. Этот класс не наследуется. |
DisablePrivateReflectionAttribute |
Указывает, что все закрытые члены, содержащиеся в типах сборки, недоступны для отражения. |
DisableRuntimeMarshallingAttribute |
Отключает встроенную подсистему управляемого или неуправляемого маршалинга среды выполнения для вызовов P/Invokes, делегатов и неуправляемых указателей функции. |
DiscardableAttribute |
Отмечает определение типа как удаляемое. |
DynamicAttribute |
Означает, что использование объекта Object с элементом следует рассматривать как динамически выполняемый тип. |
EnumeratorCancellationAttribute |
Позволяет пользователям методов с асинхронным перечислением пометить параметр, который должен принимать значение токена отмены из GetAsyncEnumerator(CancellationToken). |
ExecutionScope |
Представляет состояние динамически создаваемого метода во время выполнения. |
ExtensionAttribute |
Указывает, что метод является методом расширения либо что класс или сборка содержат методы расширения. |
FixedAddressValueTypeAttribute |
Фиксирует адрес поля со статическим типом значения в течение времени его существования. Этот класс не наследуется. |
FixedBufferAttribute |
Указывает, что поле должно считаться содержащим фиксированное число элементов указанного типа-примитива. Этот класс не наследуется. |
FormattableStringFactory |
Предоставляет статический метод для создания объекта FormattableString на основе строки составного формата и ее аргументов. |
HasCopySemanticsAttribute |
Этот класс устарел. Этот класс не наследуется. |
IDispatchConstantAttribute |
Указывает, что значение по умолчанию для параметра или поля с атрибутами является экземпляром DispatchWrapper, где свойство WrappedObject имеет значение |
IndexerNameAttribute |
Указывает имя, под которым индексатор известен в языках программирования, не поддерживающих индексаторы напрямую. |
InlineArrayAttribute |
Указывает, что хранилище экземпляра реплицируется Length последовательно. |
InternalsVisibleToAttribute |
Задает, что типы, видимые обычно только в пределах текущей сборки, являются видимыми для заданной сборки. |
InterpolatedStringHandlerArgumentAttribute |
Указывает, какие аргументы метода, включающего интерполированный обработчик строк, должны быть переданы в этот обработчик. |
InterpolatedStringHandlerAttribute |
Указывает, что тип атрибута будет использоваться в качестве обработчика интерполированной строки. |
IsBoxed |
Указывает, что измененный ссылочный тип является упакованным типом значения. Этот класс не наследуется. |
IsByRefLikeAttribute |
Указывает, что структура имеет тип byref. |
IsByValue |
Указывает, что измененный аргумент метода следует интерпретировать как имеющий семантику объекта, передаваемого по значению. Данный модификатор применяется к ссылочным типам. Этот класс не наследуется. |
IsConst |
Указывает, что измененный тип имеет модификатор |
IsCopyConstructed |
Указывает, что при любом копировании значений данного типа необходимо использовать конструктор копий, предоставляемый этим типом. Этот класс не наследуется. |
IsExplicitlyDereferenced |
Указывает, что управляемый указатель представляет параметр-указатель внутри сигнатуры метода. Этот класс не наследуется. |
IsExternalInit |
Зарезервировано для использования компилятором для отслеживания метаданных. Этот класс не должен использоваться разработчиками в исходном коде. |
IsImplicitlyDereferenced |
Указывает, что измененная ссылка на сборку мусора представляет ссылочный параметр с сигнатурой метода. Этот класс не наследуется. |
IsJitIntrinsic |
Указывает, что измененный метод является встроенным значением, для которого JIT-компилятор может выполнять создание специального кода. Этот класс не наследуется. |
IsLong |
Указывает, что измененное целое число является стандартным значением |
IsPinned |
Указывает, что изменяемый экземпляр закреплен в памяти. Этот класс не наследуется. |
IsReadOnlyAttribute |
Отмечает элемент программы как предназначенный только для чтения. |
IsSignUnspecifiedByte |
Указывает, что наличие знака для модификатора не указано. Этот класс не наследуется. |
IsUdtReturn |
Указывает, что возвращаемый тип является пользовательским. Этот класс не наследуется. |
IsUnmanagedAttribute |
Зарезервировано для использования компилятором для отслеживания метаданных. Этот атрибут не должен использоваться разработчиками в исходном коде. |
IsVolatile |
Помечает поле как переменное. Этот класс не наследуется. |
IteratorStateMachineAttribute |
Указывает, помечен ли метод в Visual Basic модификатором |
IUnknownConstantAttribute |
Указывает, что значение по умолчанию для параметра или поля с атрибутами является экземпляром UnknownWrapper, где свойство WrappedObject имеет значение |
MetadataUpdateOriginalTypeAttribute |
Создается компилятором при обновлении типа, помеченного параметром CreateNewOnMetadataUpdateAttribute , во время сеанса горячей перезагрузки. |
MethodImplAttribute |
Сообщает подробные сведения о реализации метода. Этот класс не наследуется. |
ModuleInitializerAttribute |
Используется для указания компилятору, что метод должен вызываться в инициализаторе содержащего его модуля. |
NativeCppClassAttribute |
Применяет к сборке метаданные, указывающие, что тип является неуправляемым. Этот класс не наследуется. |
NullableAttribute |
Зарезервировано для использования компилятором для отслеживания метаданных. Этот атрибут не должен использоваться разработчиками в исходном коде. |
NullableContextAttribute |
Зарезервировано для использования компилятором для отслеживания метаданных. Этот атрибут не должен использоваться разработчиками в исходном коде. |
NullablePublicOnlyAttribute |
Зарезервировано для использования компилятором для отслеживания метаданных. Этот атрибут не должен использоваться разработчиками в исходном коде. |
OverloadResolutionPriorityAttribute |
Предоставляет средства, позволяющие разработчикам компиляторов, использующим управляемый код, задавать в метаданных атрибуты, влияющие на поведение среды CLR во время выполнения. |
ParamCollectionAttribute |
Предоставляет средства, позволяющие разработчикам компиляторов, использующим управляемый код, задавать в метаданных атрибуты, влияющие на поведение среды CLR во время выполнения. |
PreserveBaseOverridesAttribute |
Гарантирует, что любой виртуальный вызов метода, использующий базовую сигнатуру или производную сигнатуру метода, выполняет переопределение самого дальнего в цепочке объекта. |
ReadOnlyCollectionBuilder<T> |
Построитель для коллекции, предназначенной только для чтения. |
ReferenceAssemblyAttribute |
Идентифицирует сборку как ссылочную сборку, которая содержит метаданные, но не исполняемый код. |
RefSafetyRulesAttribute |
Указывает языковую версию ссылочных правил безопасности, используемых при компиляции модуля. |
RequiredAttributeAttribute |
Указывает, что импортирующий компилятор должен полностью понимать семантику определения типа либо отказаться от его использования. Этот класс не наследуется. |
RequiredMemberAttribute |
Указывает, что тип содержит обязательные элементы или что член является обязательным. |
RequiresLocationAttribute |
Зарезервировано для использования компилятором для отслеживания метаданных. Этот атрибут не должен использоваться разработчиками в исходном коде. |
RuleCache<T> |
Представляет кэш правил привязки времени выполнения. |
RuntimeCompatibilityAttribute |
Указывает, следует ли создавать оболочку для выражений, не являющихся производными от класса Exception, в виде объекта RuntimeWrappedException. Этот класс не наследуется. |
RuntimeFeature |
Определяет интерфейсы API, чтобы определить, поддерживаются ли средой CLR определенные функции. |
RuntimeHelpers |
Предоставляет набор статических методов и свойств для поддержки компиляторов. Этот класс не наследуется. |
RuntimeOps |
Содержит вспомогательные методы, вызываемые из динамически создаваемых методов. |
RuntimeWrappedException |
Создает оболочку для исключения, не являющегося производным от класса Exception. Этот класс не наследуется. |
ScopedRefAttribute |
Зарезервировано для использования компилятором для отслеживания метаданных. Этот атрибут не должен использоваться разработчиками в исходном коде. |
ScopelessEnumAttribute |
Указывает, что машинное перечисление не уточняется именем типа перечисления. Этот класс не наследуется. |
SkipLocalsInitAttribute |
Указывает компилятору, что флаг инициализации .locals не следует задавать в заголовках вложенных методов при передаче в метаданные. |
SpecialNameAttribute |
Указывает, что тип или член интерпретируется особым образом средой выполнения или инструментами. Этот класс не наследуется. |
StateMachineAttribute |
Позволяет определить, является ли метод методом конечного компьютера. |
StringFreezingAttribute |
Не рекомендуется. Замораживает строковый литерал при создании машинных образов с помощью программы Ngen.exe (средство создания машинных образов). Этот класс не наследуется. |
StrongBox<T> |
Содержит ссылку на значение. |
SuppressIldasmAttribute |
Запрещает программе Ildasm.exe (дизассемблер IL) дизассемблировать сборку. Этот класс не наследуется. |
SwitchExpressionException |
Указывает, что выражению switch, не являющемуся исчерпывающим, не удалось сопоставить входные данные во время выполнения. Исключение при необходимости содержит объект, представляющий несовпадающее значение. |
TupleElementNamesAttribute |
Указывает, что использование кортежа значений для элемента должно обрабатываться как кортеж с именами элементов. |
TypeForwardedFromAttribute |
Указывает исходный класс Type в другой сборке. |
TypeForwardedToAttribute |
Указывает целевой Type в другой сборке. |
Unsafe |
Содержит универсальные низкоуровневые функции для управления управляемыми и неуправляемными указателями. |
UnsafeAccessorAttribute |
Предоставляет доступ к недоступному члену определенного типа. |
UnsafeValueTypeAttribute |
Указывает, что тип содержит неуправляемый массив, который может переполниться. Этот класс не наследуется. |
Структуры
AsyncIteratorMethodBuilder |
Представляет конструктор для асинхронных итераторов. |
AsyncTaskMethodBuilder |
Представляет конструктор для асинхронных методов, возвращающих задачу. |
AsyncTaskMethodBuilder<TResult> |
Представляет построитель для асинхронных методов, который возвращает задачу и предоставляет параметр для результата. |
AsyncValueTaskMethodBuilder |
Представляет конструктор для асинхронных методов, возвращающих задачу ValueTask. |
AsyncValueTaskMethodBuilder<TResult> |
Представляет конструктор для асинхронных методов, возвращающий задачу ValueTask<TResult>. |
AsyncVoidMethodBuilder |
Представляет конструктор для асинхронных методов, которые не возвращают никакое значение. |
ConfiguredAsyncDisposable |
Предоставляет тип, с помощью которого можно настраивать выполнение ожиданий для IAsyncDisposable. |
ConfiguredCancelableAsyncEnumerable<T>.Enumerator |
Предоставляет асинхронный перечислитель типа awaitable, который обеспечивает допускающую отмену итерацию и настроенные ожидания. |
ConfiguredCancelableAsyncEnumerable<T> |
Предоставляет асинхронное перечисление типа awaitable, которое обеспечивает допускающую отмену итерацию и настроенные ожидания. |
ConfiguredTaskAwaitable |
Предоставляет объект типа awaitable, который включает настроенные объекты типа awaiter для задачи. |
ConfiguredTaskAwaitable.ConfiguredTaskAwaiter |
Предоставляет объект типа awaiter для объекта awaitable (ConfiguredTaskAwaitable). |
ConfiguredTaskAwaitable<TResult>.ConfiguredTaskAwaiter |
Предоставляет объект типа awaiter для объекта типа awaitable (ConfiguredTaskAwaitable<TResult>). |
ConfiguredTaskAwaitable<TResult> |
Предоставляет объект типа awaitable, который включает настроенные объекты типа awaiter для задачи. |
ConfiguredValueTaskAwaitable |
Предоставляет тип awaitable, который включает настроенные ожидания для задачи ValueTask. |
ConfiguredValueTaskAwaitable.ConfiguredValueTaskAwaiter |
Предоставляет объект типа awaiter для ConfiguredValueTaskAwaitable. |
ConfiguredValueTaskAwaitable<TResult>.ConfiguredValueTaskAwaiter |
Предоставляет объект типа awaiter для ConfiguredValueTaskAwaitable<TResult>. |
ConfiguredValueTaskAwaitable<TResult> |
Предоставляет тип awaitable, который включает настроенные ожидания для задачи ValueTask<TResult>. |
DefaultInterpolatedStringHandler |
Предоставляет обработчик, используемый компилятором языка для обработки интерполированных строк в String экземпляры. |
PoolingAsyncValueTaskMethodBuilder |
Представляет конструктор для асинхронных методов, возвращающих задачу ValueTask. |
PoolingAsyncValueTaskMethodBuilder<TResult> |
Представляет конструктор для асинхронных методов, возвращающий задачу ValueTask<TResult>. |
TaskAwaiter |
Предоставляет объект, который ожидает завершения асинхронной задачи. |
TaskAwaiter<TResult> |
Представляет объект, который ожидает завершения асинхронной задачи и предоставляет параметр для результата. |
ValueTaskAwaiter |
Предоставляет объект типа awaiter для ValueTask. |
ValueTaskAwaiter<TResult> |
Предоставляет объект типа awaiter для ValueTask<TResult>. |
YieldAwaitable |
Предоставляет контекст для ожидания при асинхронном переключении на целевую среду. |
YieldAwaitable.YieldAwaiter |
Предоставляет контекст типа awaiter для переключения на целевую среду. |
Интерфейсы
IAsyncStateMachine |
Представляет конечные автоматы, созданные для асинхронных методов. Этот тип предназначен только для использования компилятором. |
ICriticalNotifyCompletion |
Представляет объект типа awaiter, который планирует продолжение работы после завершения операции await. |
INotifyCompletion |
Представляет операцию, которая планирует продолжение работы после ее завершения. |
IRuntimeVariables |
Представляет значения переменных среды выполнения. |
IStrongBox |
Определяет свойство для доступа к значению, на которое ссылается объект. |
ITuple |
Определяет реализацию кортежа общего назначения, предоставляющую доступ к членам экземпляра кортежа без сведений о базовом типе кортежа. |
Перечисления
CompilationRelaxations |
Указывает параметры, контролирующие точность кода, создаваемого JIT-компилятором среды CLR. |
LoadHint |
Задает предпочитаемую привязку по умолчанию для зависимой сборки. |
MethodCodeType |
Определяет способ реализации метода. |
MethodImplOptions |
Указывает константы, определяющие сведения о реализации метода. |
UnsafeAccessorKind |
Указывает тип целевого объекта, к которому UnsafeAccessorAttribute предоставляет доступ. |
Делегаты
ConditionalWeakTable<TKey,TValue>.CreateValueCallback |
Представляет метод, который создает значение не по умолчанию для добавления в качестве пары "ключ-значение" в объект ConditionalWeakTable<TKey,TValue>. |
RuntimeHelpers.CleanupCode |
Представляет метод, выполняемый в случае исключения. |
RuntimeHelpers.TryCode |
Представляет делегат для кода, который должен выполняться в блоке try. |
Комментарии
Это пространство имен в основном предназначено для средств записи компилятора, хотя некоторые из его классов, например InternalsVisibleToAttribute, используются в самых разных приложениях.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по