Fungsi Manajemen Memori
Dokumen ini menjelaskan fungsi manajemen memori yang disediakan Runtime Konkurensi untuk membantu Anda mengalokasikan dan membebaskan memori secara bersamaan.
Tip
Runtime Konkurensi menyediakan penjadwal default, dan oleh karena itu Anda tidak diharuskan untuk membuatnya di aplikasi Anda. Karena Task Scheduler membantu Anda menyempurnakan performa aplikasi Anda, kami sarankan Anda memulai dengan Pustaka Pola Paralel (PPL) atau Pustaka Agen Asinkron jika Anda baru menggunakan Runtime Konkurensi.
Runtime Konkurensi menyediakan dua fungsi manajemen memori yang dioptimalkan untuk mengalokasikan dan membebaskan blok memori secara bersamaan. Fungsi konkurensi::Alloc mengalokasikan blok memori dengan menggunakan ukuran yang ditentukan. Fungsi konkurensi::Free membebaskan memori yang dialokasikan oleh Alloc
.
Catatan
Fungsi Alloc
dan Free
mengandalkan satu sama lain. Free
Gunakan fungsi hanya untuk merilis memori yang Anda alokasikan dengan menggunakan Alloc
fungsi . Selain itu Alloc
, ketika Anda menggunakan fungsi untuk mengalokasikan memori, gunakan hanya fungsi untuk melepaskan memori tersebut Free
.
Alloc
Gunakan fungsi dan Free
saat Anda mengalokasikan dan membebaskan sekumpulan ukuran alokasi tetap dari utas atau tugas yang berbeda. Runtime Konkurensi menyimpan memori yang dialokasikannya dari tumpukan Runtime C. Runtime Konkurensi menyimpan cache memori terpisah untuk setiap utas yang sedang berjalan; oleh karena itu, runtime mengelola memori tanpa menggunakan kunci atau penghalang memori. Aplikasi lebih mendapat manfaat dari Alloc
fungsi dan Free
ketika cache memori diakses lebih sering. Misalnya, utas yang sering memanggil dan Alloc
Free
menguntungkan lebih dari utas Alloc
yang terutama memanggil atau Free
.
Catatan
Ketika Anda menggunakan fungsi manajemen memori ini, dan aplikasi Anda menggunakan banyak memori, aplikasi dapat memasuki kondisi memori rendah lebih cepat dari yang Anda harapkan. Karena blok memori yang di-cache oleh satu utas tidak tersedia untuk utas lain, jika satu utas menyimpan banyak memori, memori tersebut tidak tersedia.
Contoh
Untuk contoh yang menggunakan Alloc
fungsi dan Free
untuk meningkatkan performa memori, lihat Cara: Menggunakan Alokasi dan Gratis untuk Meningkatkan Performa Memori.
Baca juga
Tugas Microsoft Azure Scheduler
Cara: Gunakan Alokasi dan Gratis untuk Meningkatkan Performa Memori
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk