Kết quả 1 đến 3 của 3
  1. #1
    Ngày tham gia
    Dec 2014
    Bài viết
    1

    hỏi về NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; ....?


  2. #2
    Ngày tham gia
    Dec 2014
    Bài viết
    0
    Mã:
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; // insert code here [pool release];
    Hi, theo mình được biết thì cái này để tự động release những vùng nhớ được khai báo bằng 'autorelease'. Cái này hoạt động giống như ngăn xếp. Khi [pool release] được gọi, nó sẽ pop các 'autorelease' racho tới khi gặp pool thì thôi. Bạn đọc thêm về memory managerment của ObjectiveC xem.

  3. #3
    Ngày tham gia
    Dec 2014
    Đang ở
    P604. lầu 10 - Tòa nhà International Plaza - 343 Phạm Ngũ Lão, Quận 1
    Bài viết
    0
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];

    Tạo 1 đối tượng kiểu NSAutoreleasePool tên là pool. alloc dùng để xác định vùng nhớ cho pool. Còn init là khởi tạo. Phía dưới cùng có [pool release];Khi gặp lệnh này thì tất cả các Object được tạo ra mà có thuộc tính Autorelease sẽ bị huỷ và thu hồi vùng nhớ. Nếu tạo ứng dụng cho Mac OSX 10.7 trở lên bạn có thể quên tính năng này vì GC đã được tích hợp vào hệ thống. Còn trên iOS thì bạn phải LUÔN nhớ mà dùng nó 1 cách uyển chuyển nhất nhằm tiết kiệm tài nguyên.

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •