Objective-C 0.5


Basic memory management
ถ้าคุณเขียน application บน mac os x คุณสามารถเลือกที่จะเปิด garbage collection, โดยทั่วไปแล้วมันหมายถึงคุยไม่ต้องคิดถึงเรื่อง memory management จนกว่ากระทั่งคุณมีการใช้งานที่ซับซ้อนมากยิ่งขึ้น

อย่างไรก็ตาม คุณอาจจะไม่ได้ทำงานกับสิ่งแวดล้อมที่ support garbage collection ตลอด, ในกรณีนี้คุณต้องรู้ concept คร่าวๆ

เมื่อคุณสร้าง obj ด้วย alloc คุณต้องใช้ release กับ object ภายหลังการใช้งาน, แต่คุณห้าม release object ที่เป็น autoreleased เอง ไม่งั้น application ของคุณอาจจะพังได้

ตัวอย่าง

// string1 will be released automatically
NSString* string1 = [NSString string];

// must release this when done
NSString* string2 = [[NSString alloc] init];
[string2 release];

จากส่วนนี้คุณสามารถถือเอาได้ว่า automatic obj จะหายไปเองเมื่อจบ function

มีเรื่องอีกมากเกี่ยวกับเรื่อง memory management, แต่ว่ามันต้องใช้ความเข้าใจเกี่ยวกับ concept มากขึ้นอีกนิดหน่อย

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s