소셜 미디어 IOS 용 메모리 관리 방법 - iOS 용 메모리를 관리하는 가장 쉬운 방법

IOS 용 메모리 관리 방법 - iOS 용 메모리를 관리하는 가장 쉬운 방법

비디오: 아이폰 X 느려지면 메모리 정리 해서 빠르게 만드는 방법 2024

비디오: 아이폰 X 느려지면 메모리 정리 해서 빠르게 만드는 방법 2024
Anonim

iOS 용 메모리를 관리하는 가장 쉬운 방법 Objective-C 런타임에서 자동 참조 계산 (ARC)이라는 시스템을 사용하여 처리하도록하는 것입니다. 사용하십시오. (ARC는 2011 년부터 Xcode 4.2 이상에서 사용 가능합니다.)

iOS가 처음 소개되었을 때 프로그램의 객체 수명주기를 추적하여 수동으로 메모리를 관리해야했습니다. Object <-c> 런타임 시스템에 객체를 유지할 시점과 해제 시점을 알려주고 Apple이 retain-release, 라는 참조 체계를 사용하여 참조 계산이라는 기술을 사용했습니다.

보유

  • 릴리스

  • 자동 릴리스

  • 참조 카운터

를 조작합니다. 목적. 이 참조 카운트가 iOS에 의해 관리되는 방법은 다음과 같습니다. 대상 객체에서 retain이 호출 될 때마다 참조 횟수가 1 씩 증가합니다.

  1. 5 개의 객체가 대상 객체에 대해 retain을 호출하면 참조 수는 5가됩니다 (단, 객체가 할당되면 init이 자동으로 참조 횟수를 증가시킵니다).

    대상 개체가 필요하지 않게됨에 따라 다섯 개의 개체가 개체에서 해제를 호출합니다. 릴리스가 호출 될 때마다 대상 객체의 참조 횟수가 감소합니다 (1 씩).

    참조 카운트가 0이 될 때 (즉, 마지막 객체가 release를 호출 할 때), 객체의 메모리는 시스템에 의해 해제된다.

  2. 세 번째 방법 인 autorelease는 생성 한 객체를 스레드로 넘겨주고 스레드가 완료 될 때 스레드가 객체를 해제 할 때 수행해야 할 때 호출됩니다.

  3. 내부적으로 ARC 시스템은 수동 참조 카운팅에 사용 된 것과 동일한 참조 카운팅 시스템을 사용합니다. 그러나 ARC를 사용하려면 다음과 같이 @autoreleasepool 블록에 코드를 넣으십시오.

@autoreleasepool {… Your code …}

컴파일러

는 적절한 메모리 관리 메소드 호출을 코드에 삽입하므로 이 @autoreleasepool 블록 내에서 생성 된 모든 것은 프로그램이 블록을 종료 할 때 해제됩니다.

IOS 용 메모리 관리 방법 - iOS 용 메모리를 관리하는 가장 쉬운 방법

편집자의 선택

계획하기 - 인형

계획하기 - 인형

학습 계획 PHR 또는 SPHR 시험을 준비하는 데 사용할 수있는 도구입니다. 따라서 귀하의 학습 계획이 귀하의 필요에 맞게 이루어지기를 바랍니다. 고려해야 할 사항은 시험 날짜, 공부에 바칠 수있는 시간, 귀하의 구체적인 강점 및 목표를 포함해야합니다.

PHR / SPHR 시험을 치러야합니까? - 인형

PHR / SPHR 시험을 치러야합니까? - 인형

일부 유명한 이론가들은 시험을 치러야하거나 마지막 순간 (시험 전주 또는 밤)까지 공부를 연기하는 것은 쓸모 없다고 말합니다. 단기 기억력 증가는 종종 다른 곳에 정보가 손실되는 것을 희생합니다. 왜냐하면 심야 학습이 정상적인 수면 패턴을 위반하는 경우 특히 그렇습니다. 왜냐하면 ...

편집자의 선택

Squarespace에서 웹 사이트의 색상을 변경하는 방법 - 인형

Squarespace에서 웹 사이트의 색상을 변경하는 방법 - 인형

디자인 응용 프로그램을 사용하면 컬러 휠에서 색상을 선택할 수 있으므로 Squarespace의 스타일 편집기에서 색상을 선택하면 집에서 편안하게 느낄 수 있습니다. 그러나 컬러 휠을 한번도 본 적이 없다면 사용하기 쉽기 때문에 걱정하지 마십시오. 바퀴에서 색상을 선택하는 방법 색상을 변경하려면 ...

Squarespace에서 적절한 크기와 가치를 선택하는 방법 - 인형

Squarespace에서 적절한 크기와 가치를 선택하는 방법 - 인형

귀하의 웹 사이트의 너비와 Squarespace의 텍스트 및 이미지의 크기에 따라 작업 할 무제한 캔버스가있는 것처럼 느낄 수 있습니다. 어떤면에서 이것이 사실이지만, Squarespace는 웹 사이트의 경계를 기본 크기로 설정하는 좋은 일을합니다.

Squarespace에서 상점 설정을 조정하는 방법 - 인형

Squarespace에서 상점 설정을 조정하는 방법 - 인형

사이트 관리자 → 상거래 → 점포 설정으로 이동하면 화면 상단에 상점이 작동하지 않음을 나타내는 큰 노란색 상자가 나타납니다. 스토어를 판매하려면 스토어를 사이트에서 지불을 수락하는 데 사용되는 지불 처리 서비스 인 Stripe에 연결해야합니다. ...

편집자의 선택

이 코드 및 Minecraft - 더미

이 코드 및 Minecraft - 더미

로 무작위 인 경우 > 은 임의로 지정되며 Minecraft에서 코드를 작성할 때 임의의 정수를 사용하여 코드는 임의의 방식으로 동작합니다. 정수는 숫자입니다. LearnToMod의 임의의 정수 수학 블록은 코드가 실행될 때마다 두 숫자 (예 : 1과 10) 사이의 임의의 숫자를 선택합니다. Minecraft에서 정수 사용하기. The ...

Minecraft Minigame - dummy

Minecraft Minigame - dummy

를 디자인하면 게임을 디자인해야합니다. Gameplay Loop는 게임을 재미 있고 도전적이며 완벽하게 진행할 수있는 간단한 과정입니다. Gameplay Loop에는 네 부분으로 구성되어 있습니다. 시작 : 기본 장면을 만듭니다. 목표 : 이기기위한 방법을 추가하고 ...

Minecraft에서 물과 얼음 효과를 창조하기 - 더미

Minecraft에서 물과 얼음 효과를 창조하기 - 더미

일부 실제 물리학이 게임 내에서 작동한다는 것입니다. 예를 들어, 물을 가지고 얼음을 넣으면 얼어 붙습니다! 좋아요, 현실 세계에서 얼음을 첨가해도 물이 얼지 않을 수도 있지만 더 추워집니다. 당신은 이것을 확인하실 수 있습니다 ...