Threads und die Tücken – Frank Illenberger’s Beitrag auf der Macoun 2014

Threads und die Tücken

Nach einer kleinen Einführung in Threads zeigte Frank Illenberger von den ProjectWizards, welche Probleme man mit der Nebenläufigkeit haben kann, wie man sie vermeidet und wie man Grand Central Dispatch (GCD) als Retter in der Not einsetzen kann.
Das Problem: Das Betriebssystem verteilt die CPU-Kraft aller Kerne auf die einzelnen Threads und der Entwickler hat wenig Kontrolle, was wo läuft. Fehler in Threads lassen sich schwer lokalisieren, da sie nicht-reproduzierbar auftreten können. Dennoch sind Hintergrundabläufe enorm wichtig, etwa um asynchrone Netzwerkanfragen zu erledigen oder um zu verhindern, dass der zentrale Mainthread blockiert wird und nicht mehr auf Tastatur- und Mausereignisse reagieren kann.

An einem Beispielprogramm zeigte Illenberger einige häufige Probleme und machte Lösungsvorschläge: Man sollte gemeinsame Daten möglichst vermeiden und unveränderliche Objekte bevorzugen, wo immer es geht. Obendrein gilt es, Datenbanken zu verwenden oder Locks/Mutex-Konstruktionen einzusetzen. Bei Locks sind allerdings auch die gefürchteten Deadlocks möglich, das passiert, wenn zwei Threads gegenseitig auf sich warten.
Mit Dispatch Queues als Teil von Grand Central Dispatch kann man das vermeiden.
Dabei verwaltet Apples Framework den Thread Pool selbst; der Entwickler hantiert nur mit Codeblöcken.
Blöcke dürfen Abhängigkeiten haben und einige Blöcke können exklusiv laufen. Ein Deadlock ist dann unmöglich, weil nur ein Block zeitgleich läuft. Quintessenz: Threads sind oft nötig, aber man sollte sehr vorsichtig damit umgehen und möglichst auf GCD setzen.

Artikel: Threads und die Tücken

Quelle: Heise.de – Mac&i (Mac & i > Artikel > Macoun 2014: iOS 8, Yosemite und Swift > Threads und die Tücken)

Permalink: http://heise.de/-2405151

Merlin 2.9.3 arbeitet auch unter OS X 10.10 Yosemite (beta 5)

Heute haben wir Merlin 2.9.3 als Wartungsversion veröffentlicht. Die Aktualisierung ist für alle Merlin 2-Nutzer empfohlen und kann kostenlos von unserer Webseite heruntergeladen werden.

Nachfolgend sind die Neuerungen und Verbesserungen aufgeführt:

Weiterlesen

XML aus MS Project 2013 exportieren

Das XML-Format eignet sich für den Datenaustausch zwischen Merlin und MS Project. Anhand dieser Schritte können Projekte aus MS Project 2013 als XML-Dateien für den Import in Merlin erstellt werden. Wenn Sie wissen möchten, wie man XML in MS Project 2013 importiert, können Sie es hier nachlesen.

1) Öffnen Sie ein Projekt in MS Project.
2) Klicken Sie auf »Datei«.

MS Project 2013 XML Export 1

3) Klicken Sie auf »Exportieren«. Weiterlesen

XML in MS Project 2013 importieren

Mit Merlin 2 lassen sich Projekte mit MS Project-Anwendern austauschen. Hierzu existiert der Export (Ablage > Exportieren). Im Export-Dialog lassen sich diverse Formate für den Export auswählen. Darunter auch MS Project XML. Damit lassen sich Projekte aus Merlin an Windows-Anwender für die Bearbeitung weitergeben. Wenn Sie wissen möchten, wie man XML aus MS Project 2013 exportiert, können Sie es hier nachlesen.

XML Export MS ProjectDie daraus resultierende XML-Datei kann direkt in MS Project 2013 wie folgt geöffnet werden.

1) Selektieren Sie die Option „Neu aus vorhandenem Projekt“ aus.

MS Project 2013 XML Öffnen 1

2) Im Öffnen-Dialog klicken Sie auf das Klappmenü „Projekte“. Weiterlesen