天天看點

iphone開發中記憶體利用說明

由于記憶體很小,是以我們要有技巧的利用記憶體。

原則一,常用的資料放在記憶體當中,不常用的用的時候才讀入記憶體。

原則二,常用的資料如果太大,則不适宜放在記憶體。

基于上面兩條原則,用一個示例說明。 在開發過程中,圖檔是大量需要的。比如背景圖檔,常用到的,那麼我們就可以用下面的代碼讀取。

UIImage *myImage = [UIImage imageNamed:@"icon.png"]; 

如果不常用的圖檔,那麼可以用

NSString *path = [[NSBundle mainBundle] pathForResource:@"icon" ofType:@"png"];

myImage = [UIImage imageWithContentsOfFile:path]; 

或用

NSString *fileLocation = [[NSBundle mainBundle] pathForResource:fileName ofType:extension];

NSData *imageData = [NSData dataWithContentsOfFile:fileLocation];

[UIImage imageWithData:imageData]; 

這樣每次都I/O去讀取圖檔資料,而不是把資料放在cache中,不過要記得自己管理記憶體,小心記憶體溢出。

繼續閱讀