Bagikan melalui


Fungsi RpcSsAllocate (rpcndr.h)

Fungsi RpcSsAllocate mengalokasikan memori dalam fungsi manajemen memori stub RPC, dan mengembalikan penunjuk ke memori yang dialokasikan atau NULL.

Sintaks

void * RpcSsAllocate(
  size_t Size
);

Parameter

Size

Ukuran memori yang akan dialokasikan, dalam byte.

Menampilkan nilai

Nilai Makna
RPC_S_OUT_OF_MEMORY
Sistem kehabisan memori.
 
Catatan Untuk daftar kode kesalahan yang valid, lihat Nilai Pengembalian RPC.
 

Keterangan

Fungsi RpcSsAllocate memungkinkan aplikasi untuk mengalokasikan memori dalam fungsi manajemen memori stub RPC. Sebelum memanggil RpcSsAllocate, lingkungan manajemen memori harus sudah ditetapkan. Untuk manajemen memori yang disebut dalam stub, stub itu sendiri biasanya menetapkan lingkungan yang diperlukan. Untuk informasi selengkapnya, lihat Manajemen Memori. Saat menggunakan RpcSsAllocate untuk mengalokasikan memori yang tidak dipanggil dari stub, aplikasi harus memanggil RpcSsEnableAllocate untuk membangun lingkungan manajemen memori yang diperlukan.

Rutinitas RpcSsAllocate mengembalikan penunjuk ke memori yang dialokasikan, jika panggilan berhasil. Jika tidak, itu menimbulkan pengecualian.

Ketika stub menetapkan manajemen memori, ia membebaskan memori apa pun yang dialokasikan oleh RpcSsAllocate. Aplikasi dapat membebaskan memori tersebut sebelum kembali ke stub panggilan dengan memanggil RpcSsFree.

Sebaliknya, ketika aplikasi menetapkan manajemen memori, aplikasi harus membebaskan memori yang dialokasikan. Hal ini dilakukan dengan memanggil RpcSsFree atau RpcSsDisableAllocate.

Untuk mengelola memori yang sama dalam lingkungan memori–manajemen stub, beberapa utas dapat memanggil RpcSsAllocate dan RpcSsFree. Dalam hal ini, utas harus berbagi handel manajemen memori stub–utas yang sama. Aplikasi meneruskan handel utas dari thread-to-thread dengan memanggil RpcSsGetThreadHandle dan RPCSsSetThreadHandle.

Catatan Rutinitas RpcSsAllocate menimbulkan pengecualian, tidak seperti RpcSmAllocate, yang mengembalikan kode kesalahan.
 

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

Lihat juga

RpcSmAllocate

RpcSsDisableAllocate

RpcSsEnableAllocate

RpcSsFree

RpcSsGetThreadHandle

RpcSsSetThreadHandle