Поделиться через


Unsafe.CopyBlockUnaligned Метод

Определение

Перегрузки

CopyBlockUnaligned(Byte, Byte, UInt32)

Копирует байты из адреса источника в адрес назначения без учета архитектурно зависимого выравнивания адресов.

CopyBlockUnaligned(Void*, Void*, UInt32)

Копирует байты из адреса источника в адрес назначения без учета архитектурно зависимого выравнивания адресов.

CopyBlockUnaligned(Byte, Byte, UInt32)

Исходный код:
Unsafe.cs
Исходный код:
Unsafe.cs
Исходный код:
Unsafe.cs

Важно!

Этот API несовместим с CLS.

Копирует байты из адреса источника в адрес назначения без учета архитектурно зависимого выравнивания адресов.

public:
 static void CopyBlockUnaligned(System::Byte % destination, System::Byte % source, System::UInt32 byteCount);
public static void CopyBlockUnaligned (ref byte destination, ref byte source, uint byteCount);
[System.CLSCompliant(false)]
public static void CopyBlockUnaligned (ref byte destination, ref byte source, uint byteCount);
static member CopyBlockUnaligned : byte * byte * uint32 -> unit
[<System.CLSCompliant(false)>]
static member CopyBlockUnaligned : byte * byte * uint32 -> unit
Public Shared Sub CopyBlockUnaligned (ByRef destination As Byte, ByRef source As Byte, byteCount As UInteger)

Параметры

destination
Byte

Управляемый указатель, соответствующий целевому адресу для копирования.

source
Byte

Управляемый указатель, соответствующий исходному адресу для копирования.

byteCount
UInt32

Число байт для копирования.

Атрибуты

Комментарии

Этот API соответствует unaligned.1 cpblk последовательности кода операции. Для указателей или source не делается никаких предположений о выравниванииdestination. См. ecma-335, sec. III.3.30 ("cpblk - copy data from memory to memory") и Sec. III.2.5 ("unaligned. (префикс) — инструкция указателя может быть неровнена") для получения дополнительных сведений.

Внимание!

Этот API не предназначен для копирования запусков памяти произвольной длины. Вместо этого рекомендуется использовать MemoryCopy или CopyTo для этого сценария.

Применяется к

CopyBlockUnaligned(Void*, Void*, UInt32)

Исходный код:
Unsafe.cs
Исходный код:
Unsafe.cs
Исходный код:
Unsafe.cs

Важно!

Этот API несовместим с CLS.

Копирует байты из адреса источника в адрес назначения без учета архитектурно зависимого выравнивания адресов.

public:
 static void CopyBlockUnaligned(void* destination, void* source, System::UInt32 byteCount);
public static void CopyBlockUnaligned (void* destination, void* source, uint byteCount);
[System.CLSCompliant(false)]
public static void CopyBlockUnaligned (void* destination, void* source, uint byteCount);
static member CopyBlockUnaligned : nativeptr<unit> * nativeptr<unit> * uint32 -> unit
[<System.CLSCompliant(false)>]
static member CopyBlockUnaligned : nativeptr<unit> * nativeptr<unit> * uint32 -> unit

Параметры

destination
Void*

Неуправляемый указатель, соответствующий целевому адресу для копирования.

source
Void*

Неуправляемый указатель, соответствующий исходному адресу для копирования.

byteCount
UInt32

Число байт для копирования.

Атрибуты

Комментарии

Этот API соответствует unaligned.1 cpblk последовательности кода операции. Для указателей или source не делается никаких предположений о выравниванииdestination. См. ecma-335, sec. III.3.30 ("cpblk - copy data from memory to memory") и Sec. III.2.5 ("unaligned. (префикс) — инструкция указателя может быть неровнена") для получения дополнительных сведений.

Внимание!

Этот API не предназначен для копирования запусков памяти произвольной длины. Вместо этого рекомендуется использовать MemoryCopy или CopyTo для этого сценария.

Применяется к