13
我想知道如何在Mac OS X上「清理」內存。如果您安裝了開發人員工具,則可以使用purge
命令清除內存。但是,如果安裝的開發工具是而不是,則此命令將不起作用。其他應用程序能夠做到這一點,所以我知道這是可能的。OS X應用程序如何「清潔」內存?
如何編寫一個應用程序來「清理」內存,這意味着刪除不活動的內存並在可用內存中提供更多空間?
我想知道如何在Mac OS X上「清理」內存。如果您安裝了開發人員工具,則可以使用purge
命令清除內存。但是,如果安裝的開發工具是而不是,則此命令將不起作用。其他應用程序能夠做到這一點,所以我知道這是可能的。OS X應用程序如何「清潔」內存?
如何編寫一個應用程序來「清理」內存,這意味着刪除不活動的內存並在可用內存中提供更多空間?
一個解決方法是malloc儘可能多的內存,然後釋放該內存。看到另一個例子採取下面的代碼:
ints = size/sizeof(unsigned int);
unsigned int* mem;
mem = (unsigned int*) malloc(size);
for (i=0; i<ints; i++) {
mem[i] = rand();
}
free(mem);
當然它是由你來決定通過清除內存你的意思,多少對malloc。
關於請注意: - >決定分配多少的最佳方法是什麼? –
好問題。我一直想知道這些應用程序是如何做到的。我猜他們不能使用私人API,或者他們會被從Mac App Store中踢走。 –
他們不,真的。他們只是吃盡可能多的內存來強制其他應用程序清除。 –
我的朋友告訴我,這看起來好像可能因爲「脫離主題」而關閉。這與編程有關:/ – Yep