Fungsi RpcSmAllocate (rpcndr.h)
Fungsi RpcSmAllocate mengalokasikan memori dalam fungsi manajemen memori stub RPC dan mengembalikan pointer ke memori yang dialokasikan atau NULL.
Sintaks
void * RpcSmAllocate(
size_t Size,
RPC_STATUS *pStatus
);
Parameter
Size
Ukuran memori yang akan dialokasikan, dalam byte.
pStatus
Penunjuk ke status yang dikembalikan.
Menampilkan nilai
Nilai | Makna |
---|---|
|
Panggilan berhasil. |
|
Sistem kehabisan memori. |
Keterangan
Rutinitas RpcSmAllocate memungkinkan aplikasi untuk mengalokasikan memori dalam lingkungan manajemen memori stub RPC. Sebelum memanggil RpcSmAllocate, lingkungan manajemen memori harus sudah ditetapkan. Untuk manajemen memori yang disebut dalam stub, stub server itu sendiri dapat membangun lingkungan yang diperlukan. Untuk informasi selengkapnya, lihat RpcSmEnableAllocate. Saat menggunakan RpcSmAllocate untuk mengalokasikan memori yang tidak dipanggil dari stub, aplikasi harus memanggil RpcSmEnableAllocate untuk membangun lingkungan manajemen memori yang diperlukan.
Rutinitas RpcSmAllocate mengembalikan pointer ke memori yang dialokasikan jika panggilan berhasil. Jika tidak, NULL dikembalikan.
Ketika stub menetapkan manajemen memori, itu membebaskan memori apa pun yang dialokasikan oleh RpcSmAllocate. Aplikasi dapat membebaskan memori tersebut sebelum kembali ke stub panggilan dengan memanggil RpcSmFree.
Sebaliknya, ketika aplikasi menetapkan manajemen memori, aplikasi harus membebaskan memori apa pun yang dialokasikan. Hal ini dilakukan dengan memanggil RpcSmFree atau RpcSmDisableAllocate.
Untuk mengelola memori yang sama dalam lingkungan memori–manajemen stub, beberapa utas dapat memanggil RpcSmAllocate dan RpcSmFree. Dalam hal ini, utas harus berbagi handel utas manajemen memori stub yang sama. Aplikasi meneruskan handel utas dari utas ke utas dengan memanggil RpcSmGetThreadHandle dan RpcSmSetThreadHandle.
Untuk informasi selengkapnya, lihat Manajemen Memori.
Persyaratan
Klien minimum yang didukung | Windows 2000 Professional [aplikasi desktop | Aplikasi UWP] |
Server minimum yang didukung | Windows 2000 Server [aplikasi desktop | Aplikasi UWP] |
Target Platform | Windows |
Header | rpcndr.h (termasuk Rpc.h) |
Pustaka | Rpcrt4.lib |
DLL | Rpcrt4.dll |