Ajratilgan xotira boʻshmi?

Mundarija:

Ajratilgan xotira boʻshmi?
Ajratilgan xotira boʻshmi?
Anonim

Malloc va calloc funksiyalari yordamida ajratilgan xotira mustaqil ravishda ajratilmaydi. Shunday qilib, dinamik xotira taqsimoti sodir bo'lganda free usuli ishlatiladi. Bu xotirani bo'shatish orqali uni isrof qilishni kamaytirishga yordam beradi.

Ajratilgan xotira qanday qilib bo'shatiladi?

Cda malloc kutubxona funksiyasi xotira blokini yig'ishda ajratish uchun ishlatiladi. Dastur ushbu xotira blokiga malloc qaytaradigan ko'rsatgich orqali kiradi. Xotiraga ehtiyoj qolmaganda koʻrsatkich boʻsh joyga uzatiladi, bu xotirani boshqa maqsadlarda ishlatish uchun ajratadi.

Agar ajratilgan xotirani boʻshatmasangiz nima boʻladi?

Koʻp hollarda dasturdan chiqishdan oldin xotirani ajratish maʼnosizdir. OS baribir uni qaytarib oladi. Free teginish va oʻlik obʼyektlarni sahifalash; OS buni qilmaydi. Natija: Ajratishlarni hisoblaydigan "oqish detektorlari" bilan ehtiyot bo'ling.

Xotirani ajratish qimmatmi?

Yirik xotira bloklarini ajratish va boʻshatish narxini sodda oʻlchash har bir ajratish/bepul juftlik uchun taxminan 7,5 mks turadi degan xulosaga keladi. Biroq, katta hajmdagi ajratmalar uchun MB uchun uchta alohida toʻlov mavjud.

Agar shunday boʻlsa, ajratilgan xotira maydonini qayta taqsimlash mumkinmi?

Realloc funksiyasi old_blk tomonidan belgilangan xotira blokini quyidagi qoidalarga asoslanib ajratadi, qayta taqsimlaydi yoki boʻshatadi: Agar old_blk NULL boʻlsa, bayt oʻlchamli xotiraning yangi bloki. hisoblanadiajratilgan. Agar o'lcham nolga teng bo'lsa, old_blk ko'rsatgan xotirani bo'shatish uchun bo'sh funksiya chaqiriladi.

Tavsiya:

Qiziqarli maqolalar
Birlashtiruvchi moliya nimani anglatadi?
Ko'proq o'qish

Birlashtiruvchi moliya nimani anglatadi?

Ko'prikni moliyalash "ko'priklar" kompaniyaning puli tugashi va keyinchalikda mablag' tushishi o'rtasidagi tafovut. Ushbu turdagi moliyalashtirish odatda kompaniyaning qisqa muddatli aylanma mablag'larga bo'lgan ehtiyojini qondirish uchun ishlatiladi.

Qurilishda ko'prik nima?
Ko'proq o'qish

Qurilishda ko'prik nima?

Bridging - bu qurilish loyihasini yetkazib berish usuli boʻlib, sifatli qurilishda Egasining xatarlari va xarajatlarini kamaytirishga moʻljallangan. … Odatda to'liq ekvivalent yakuniy mahsulot uchun 4-5% yoki undan ko'proq xarajatlarni tejaydi.

Kokney qofiyali jargonda alan whickers nima?
Ko'proq o'qish

Kokney qofiyali jargonda alan whickers nima?

Alan-whickers ma'nosi (Kokni qofiyali jargon) Knickers. Nega Cockneys soatni choynak deb ataydi? Choynik va pech=soat Bu chalkash ibora, chunki u zamonaviy ma'noga mos kelmaydi. Bu atama soat degan ma'noni anglatadi, bu fob soatidan kelib chiqqan bo'lib, cho'ntak soati bo'lib, korpusga kichik zanjirli biriktirilgan.