응용 프로그램 수준에서 Android 및 iPhone 멀티 태스킹 구현의 주요 차이점은 무엇입니까?
(이것을 주관적인 팬보이 논쟁으로 바꾸지 않겠습니까?)
응용 프로그램 수준에서 Android 및 iPhone 멀티 태스킹 구현의 주요 차이점은 무엇입니까?
(이것을 주관적인 팬보이 논쟁으로 바꾸지 않겠습니까?)
답변:
이것은 귀하의 질문에 대한 답변은 아니지만 두 운영 체제가 여러 프로세스를 수행 할 수있는 한도 내에서 완전히 멀티 태스킹되고 있음을 분명히 밝힐 가치가 있습니다.
귀하의 질문은 응용 프로그램 수준의 멀티 태스킹 ( "다른 응용 프로그램을 사용하는 동안 한 응용 프로그램을 실행 상태로 둘 수 있습니까?")에 관한 것입니다.이 용어는 비교적 새로운 용어로 사용되며 명백한 내용이 있더라도 항상 잘 정의되어 있지는 않습니다. 예 (예 : 이메일을 읽는 동안 Pandora 듣기) 특히, 많은 응용 프로그램은 상태를 저장 / 복원하는 한 실행을 중지 한 적이없는 것처럼 사용자에게 자신을 표시하기 위해 백그라운드에서 실행할 필요가 없습니다. 정기적 인 작업 (메일 확인 또는 팝업 팝업과 같은)을 수행해야하는 응용 프로그램은 백그라운드에서 계속 실행될 필요가 없습니다. OS에 의해 때때로 호출 될 수 있습니다. 가장 큰 문제는 일반적으로 Pandora와 같이 백그라운드에서 일정한 CPU가 필요한 응용 프로그램입니다.
일반적으로 Apple은 백그라운드 응용 프로그램을 지속적으로 실행하지 못하게하고 방지하기 위해 훨씬 더 열심히 노력했지만 Android는 더 개방적입니다. 그러나 애플은 판도라와 같은 앱이 백그라운드에서 실행되도록 허용하고, 안드로이드는 폴링이나 저장된 상태로 충분할 때 불필요한 백그라운드 작업을 방해하는 더 풍부한 도구를 제공하기 때문에 수렴하고 있습니다.
내가 말할 수있는 한.
iPhone 멀티 태스킹이 훨씬 제한적입니다. 멀티 태스킹 활동은 다음 중 하나 여야합니다.
[ 기즈모도 감사합니다 !]
반면에 Android는 PC와 유사한 방식으로 진정한 멀티 태스킹을 허용합니다.
Android fanboi라는 비난을 받기 전에 설명해 드리겠습니다. iPhone 멀티 태스킹 모델은 대부분의 상황에 충분하며 Android 시스템에 수반되는 많은 문제 (예 : 메모리 부족)를 피합니다.
안드로이드는 PC와는 다른 애플리케이션 레벨 멀티 태스킹 개념을 가지고 있습니다. 데이터, 데이터를 보는 방법 및 데이터를 조작하는 방법 사이에 연결이 끊어졌습니다.
한 번에 하나의 앱보기 만 열 수 있지만 데이터 작업은 백그라운드에서 진행될 수 있습니다. 따라서 응용 프로그램 개발자가 응용 프로그램간에 전환하고 응용 프로그램을 종료하고 새로운 응용 프로그램을 시작할 때 데스크톱처럼 느끼게하기가 어렵습니다. 때로는 앱을 죽이는 것이 불가능하다고 느끼지만 때로는 한 작업으로 전환했다가 다시 되돌릴 수없는 것처럼 느껴집니다. 앱 개발자가 수행 한 방식에 따라 다릅니다.
한 번에 많은 백그라운드 프로세스를 수행 할 수 있으며 데스크톱 앱처럼 예약됩니다. 리눅스 커널은 어느 것이 메모리와 CPU 리소스를 얻는 지 우선 순위를 정하는 방법을 선택할 것입니다. 전화가 메모리가 부족하다고 판단하면 더 많은 메모리를 만들기 위해 물건을 죽이기 시작합니다. 이것은 Linux 또는 대부분의 다른 OS가 일반적으로 작동하는 방식과 다르게 수행됩니다.
프로그램의 데이터는 항상 사용 가능합니다. 앱에 데이터 액세스 권한이있는 한 사용할 수 있습니다. 사용하기 위해 백그라운드에서 실행되는 서비스가 필요하지 않습니다.
Apple은 멀티 태스킹 할 수있는 매우 구체적인 방법을 가지고 있습니다. 그것들은 안드로이드가 허용하는 방식의 일부입니다. 특정 유형의 앱만 백그라운드에서 실행할 수 있으며 그렇게하려면 구체적으로 프로그래밍해야합니다.
데스크탑은이 두 가지와 매우 다릅니다. 각 응용 프로그램의보기, 데이터 및 데이터 처리 논리는 종종 함께 잠겨 있습니다. WebOS, Symbian 및 Maemo / Meego가 모바일 장치에서 이에 대한 예라고 말하고 싶습니다. 응용 프로그램이 데이터 및 백그라운드 처리를 다른 "보기"에 노출시키는 경우 매우 특수한 응용 프로그램 인 경향이 있습니다.