create_memory_block_extern_copyT_create_memory_block_extern_copyCreateMemoryBlockExternCopyCreateMemoryBlockExternCopycreate_memory_block_extern_copy (Operator)
Name
create_memory_block_extern_copyT_create_memory_block_extern_copyCreateMemoryBlockExternCopyCreateMemoryBlockExternCopycreate_memory_block_extern_copy — Anlegen eines Speicherblocks aus einem externen Pointer durch Kopieren.
Signatur
def create_memory_block_extern_copy(pointer: int, size: int) -> HHandle
Beschreibung
create_memory_block_extern_copycreate_memory_block_extern_copyCreateMemoryBlockExternCopyCreateMemoryBlockExternCopyCreateMemoryBlockExternCopycreate_memory_block_extern_copy legt einen Speicherblock durch
Kopieren von Bytes an und gibt dessen Handle MemoryBlockHandleMemoryBlockHandleMemoryBlockHandleMemoryBlockHandlememoryBlockHandlememory_block_handle
zurück. PointerPointerPointerPointerpointerpointer ist ein Datenzeiger auf den Anfang des zu kopierenden
Speichers. SizeSizeSizeSizesizesize bestimmt die Anzahl der zu kopierenden Bytes und
dadurch die Größe des anzulegenden Speicherblocks in Byte.
Der von diesem Operator kopierte Speicher wird beim Löschen von
MemoryBlockHandleMemoryBlockHandleMemoryBlockHandleMemoryBlockHandlememoryBlockHandlememory_block_handle freigegeben, der Speicher in PointerPointerPointerPointerpointerpointer
jedoch nicht.
Ausführungsinformationen
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
Dieser Operator liefert ein Handle zurück. Es ist zu beachten, dass der Zustand einer Instanz dieses Handletyps durch bestimmte Operatoren geändert werden kann, obwohl das Handle als Eingabeparameter in diesen Operatoren verwendet wird.
Parameter
PointerPointerPointerPointerpointerpointer (input_control) pointer → HTupleintHTupleHtuple (integer) (IntPtr) (Hlong) (Hlong)
Datenzeiger auf einen Speicherblock.
SizeSizeSizeSizesizesize (input_control) integer → HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Größe des Speicherblocks.
MemoryBlockHandleMemoryBlockHandleMemoryBlockHandleMemoryBlockHandlememoryBlockHandlememory_block_handle (output_control) memory_block → HMemoryBlock, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Handle des Speicherblocks.
Ergebnis
Sind die Parameterwerte korrekt, gibt create_memory_block_extern_copycreate_memory_block_extern_copyCreateMemoryBlockExternCopyCreateMemoryBlockExternCopyCreateMemoryBlockExternCopycreate_memory_block_extern_copy
den Wert 2 (H_MSG_TRUE) zurück. Gegebenenfalls wird eine Fehlerbehandlung
durchgeführt.
Nachfolger
get_memory_block_ptrget_memory_block_ptrGetMemoryBlockPtrGetMemoryBlockPtrGetMemoryBlockPtrget_memory_block_ptr,
compare_memory_blockcompare_memory_blockCompareMemoryBlockCompareMemoryBlockCompareMemoryBlockcompare_memory_block,
memory_block_to_imagememory_block_to_imageMemoryBlockToImageMemoryBlockToImageMemoryBlockToImagememory_block_to_image,
write_memory_blockwrite_memory_blockWriteMemoryBlockWriteMemoryBlockWriteMemoryBlockwrite_memory_block
Alternativen
create_memory_block_externcreate_memory_block_externCreateMemoryBlockExternCreateMemoryBlockExternCreateMemoryBlockExterncreate_memory_block_extern
Modul
Foundation