DieselFan84

Der Blog der Zahlen und der Technik

28.01.2010 23:02    |    DieselFan84 DieselFan84    |    Kommentare (3)    |   Stichworte: , ,

Threads auf dem iPhoneThreads auf dem iPhone

Hallo,

 

ich möchte hier mal mit einem alten Vorurteil aufräumen, das iPhone OS besäße kein Multithreading.

 

Warum denken die Leute, das iPhone besitzt kein Multithreading?

 

Das muss man differenziert betrachten. Die Apps besitzen tatsächlich kein Multithreading. Es können nicht mehrere Apps gleichzeitig laufen. Warum dies so ist, das erkläre ich später. Da dies nicht möglich ist, ist dies also nicht unbegründet.

 

Also kann es wirklich kein Multithreading?

 

Doch es kann! Das Photo welches ich angehängt habe, zeigt alle aktuellen Threads auf meinem iPhone. Das ganze wurde mit dem App iStat aufgezeichnet. Dies ist als letzter Punkt zu sehen. Wie man gut sehen kann laufen folgende Anwendungen gleichzeitig:

 

  • MobilePhone --> Das Telefon
  • MobileMusicPlayer --> iPod
  • MobileMail --> Mail
  • MobileSafari --> Safari

 

Diese Applikationen können IMMER und ÜBERALL Parallel zu den anderen laufen. Ich kann aus jeder Applikation Anrufe entgegen nehmen (sonst wäre die Kiste auch ziemlich Sinnlos) und lande bei den entsprechenden Apps genau dort wo ich aufgehört habe. Grade bei Spielen ist dies sehr praktisch. Auch der iPod kann natürlich die ganze Zeit im Hintergrund Musik spielen. Egal welches Spiel oder wo man sich grade befindet. Auch läuft Mail die ganze Zeit im Hintergrund, es ist also egal was ich mache meine E-Mail werde trotzdem abgeholt und runter geladen. Genau so läuft es bei Safari auch. Egal wo ich mich befinde, die Seiten werden im Hintergrund weiter geladen. Also auch hier gibt es volle Multithread Fähigkeiten.

 

Das iPhone OS (iPhone und iPad) KANN also Multithreading. Hier ein Anwendungsbeispiel, welches auf dem iPhone genau so funktioniert wie auf jedem anderem Gerät:

 

Zitat:

Kaum zu glauben, aber ich telefoniere, navigiere und höre Musik

gleichzeitig. Und das mit einem Telefon.

Quelle

 

Dies klappt natürlich auch mit dem iPhone. Nur nicht so wie auf den anderen Geräten. Wenn jemand anruft, dann nehme ich ihn entgegen und Telefoniere. Wenn ich fertig bin, dann mache ich die Navigation wieder an und weiter gehts.

 

Aber es gibt kein Multithread die nicht Safari, Mail, iPod oder Telefon heißen?

 

Das ist richtig. Aber Apple hat hier die Push-Notification entwickelt. Wie Funktioniert das nun?

 

Zitat:

Permanente Verbindung mit Apple

Die Entwickler sollen trotz dieser Einschränkung Programme wie Instant Messenger umsetzen können. Solche Dienste müssen auch dann verfügbar sein, wenn die Anwendung nicht aktiv ist. Ab September wird Apple hierfür einen Dienst namens "Unified Push Notification" anbieten. Dafür wird das iPhone permanent mit einem Server von Apple verbunden sein.

Über diesen Server können Dienste wie beispielsweise Instant Messaging Benachrichtigungen an das jeweilige iPhone senden, zum Beispiel wenn eine neue Nachricht eingegangen ist. Der Nutzer erhält dann eine Nachricht auf den Bildschirm seines iPhones. Apples Server ist dazu permanent mit dem iPhone verbunden, er funktioniert wie eine Vermittlung. Soll beispielsweise eine Chat-Nachricht an den Nutzer gesendet werden, schickt der Server des Anbieters diese an Apples Server und dieser leitet sie an das iPhone weiter.

Quelle

 

Das heißt also, das Chatprogramme trotzdem in der Lage sind dich zu kontaktieren wenn dich jemand anschreibt.

 

Wieso gibt es nun also kein Multithread für die anderen Apps?

 

Zwei Artikel die diese Angelegenheit gut erklärt ist diese hier:

 

1. Quelle

2. Quelle

 

Zitat:

Die Gründe lägen darin, dass Hintergrundprozesse permanent Rechenleistung und Akkulaufzeit kosten würden, so Scott Forstall, Leiter für den Bereich iPhone-Software. Möglicherweise geht es Apple bei dieser Beschränkung auch um Stabilität und Sicherheit.

Kann es nun Multithread oder nicht?

 

Ja das iPhone kann Multithread. Wie man auf dem Bild sieht, laufen mehrere Prozesse Parallel. Apps hingegen können nicht Parallel laufen, das warum ist oben erläutert. Safari, Mail, iPod sowie das Phone kann es.

 

MFG Marcell


Kommentare: 3

04.03.2010 16:54    |    Trackback Trackback

Kommentiert auf: Stochern im Nebel:

 

Apple vs. Google geht in die nächste Runde

 

[...] Multitasking wie es jedes iPhone kann?!

 

http://www.motor-talk.de/.../...nn-es-oder-kann-es-nicht-t2547512.html

[...]

 

Artikel lesen ...


04.03.2010 17:16    |    Trackback Trackback

Kommentiert auf: Der allgemeine Schwall-Blog für Porsche-Fahrer:

 

iPad - Must Have oder Gerät, das die Welt nicht braucht?

 

[...] zwischenzeitlich mal beim iPhone und nu beim iMac ... :D. Aber um mal mit zwei Argumenten aufzuräumen:

 

Kann das iPhone wirklich kein Multitasking?

Apple zu teuer?

 

Zitat:

für das Geld bekommt man einen Windows-PC der ca. doppelt oder dreifach so [...]

 

Artikel lesen ...


11.03.2010 19:06    |    DieselFan84 DieselFan84

Hier mal neue Infos über der neue OS 4:

 

Zitat:

Glaubt man einem Artikel bei Apple Insider, so könnte das kommende iPhone Betriebssystem durchaus dazu in der Lage sein, endlich mehrere Programme nebenher benutzbar zu machen. Nach Quellen die 'in der Vergangenheit bereits Apples technologische Fortschritte richtig vorhersahen' könnte es einen 'Multitasking-Manager' geben, welcher auf bekannte Techniken von Mac OS X zurückgreift. Die Umsetzung darf also mit Spannung erwartet werden. Apfeltalk wird berichten, wenn in einem neuen SDK Spuren einer solchen Funktion auftauchen.

Quelle


Zuletzt gespeichert: nie   

Blogautor

Blogleser

Blog Ticker

Twitter Beiträge

Neueste Tweets
Design:
Größe:
Zum Seitenanfang
  • iPhone vs. Multithreading. Kann es oder kann es nicht? : DieselFan84 (Permalink) | (c) 2001-2012 MOTOR-TALK GmbH