Web Workers - Das Arbeitstier Browser
Upcoming SlideShare
Loading in...5
×
 

Web Workers - Das Arbeitstier Browser

on

  • 1,727 views

 

Statistics

Views

Total Views
1,727
Views on SlideShare
1,494
Embed Views
233

Actions

Likes
0
Downloads
2
Comments
0

6 Embeds 233

http://www.itkrauts.com 211
http://itkrauts.com 13
http://www.christianreber.com 4
http://litervollmilch.soup.io 3
http://webcache.googleusercontent.com 1
http://translate.yandex.net 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Web Workers - Das Arbeitstier Browser Web Workers - Das Arbeitstier Browser Presentation Transcript

  • Sebastian Bauer | Nero D&S GmbH Web Workers „Das Arbeitstier Browser“
  • Wer spricht? • Sebastian Bauer • Team Leader Intranet Services Team • Webentwickler aus Leidenschaft • „Web/Mobile addicted“ • @litervollmilch • http://xing.com/profile/Sebastian_Bauer22 • http://www.itkrauts.com
  • Über die Nero D&S GmbH • Entwickler für Liquid Media Technologien • Tochter der Nero AG • 1995 gegründet • Hauptsitz: Karlsbad, Deutschland • Regionale Niederlassungen: • Karlsbad, Deutschland • Glendale, Kalifornien, USA • Yokohama, Japan • Ca. 500 Mitarbeiter weltweit • Über 300 Millionen Installationen • Job gesucht?? ;-)
  • WEB WORKERS? WTF?
  • Ein Überblick über Web Workers • W3C Working Draft • HTML5 • JavaScript API für Arbeitsprozesse im Hintergrund • Parallelisierung ohne UI Blocking • Kein echtes Multi-Threading! • Dedicated Workers / Shared Workers
  • UND WOFÜR SO?
  • Legen wir los! WEB WORKERS IM EINSATZ
  • Einfaches Beispiel • Simulierte, 5 Sekunden lange „Berechnung“
  • The Web Worker‘s Way - Dedicated Worker
  • Dedicated Worker – bsp1_worker.js
  • „Liebe ist die einzige Sache, die sich vermehrt, wenn man sie teilt.“ Autor unbekannt
  • Einen Schritt weiter.. SHARED WORKERS
  • Ein Worker, Sie alle zu knechten.. • Ein Worker für mehrere Seiten • Verbindung über „Ports“ • „Stirbt“ wenn alle Seiten geschlossen • Posten von Nachrichten an alle „Ports“ möglich
  • Beispiel Shared Worker
  • Shared Worker – bsp2_sharedworker.js
  • Shared Worker – bsp2_sharedworker.js
  • Was geht nicht? EINSCHRÄNKUNGEN
  • Kein Zugriff auf den DOM! • alert() • document.getElementById() •…
  • Kein Zugriff auf Elternseite! • window Objekt • Objekte aus globalem Scope
  • Geht’s noch? WAS GEHT DENN ÜBERHAUPT?
  • Zugriff auf… • navigator • location (nur lesend!) • XMLHttpRequest • Object, Array, Date, Math, String • setTimeout(), setInterval() • importScripts() (innerhalb der gleichen Domain) • ApplicationCache API
  • Übertragen von Daten via postMessage() • Strings • Arrays • JSON Objekte •…
  • Und natürlich… „Spawnen“ weiterer Worker
  • Best Practices • Worker spezialisieren! • Keine riesigen Objekte hin- und herschieben! • addEventListener() benutzen • Keine „Trivialarbeiten“
  • WEITERE EINSATZGEBIETE / INTERESSANTE DEMOS
  • Motion Tracking with Web Workers http://bit.ly/ww_motio
  • „Simulated Annealing“ http://bit.ly/ww_annealing
  • Außerdem interessant für.. • Spiele-Engines • Desktop Anwendungen (AIR?) • Berechnungen von Graphen (Canvas) • …euer Projekt? Ideen?
  • Zu guter Letzt… KOMPATIBILITÄT?
  • Web Workers – WTF? WEB WORKERS FTW!
  • Bildernachweis • -nw- @flickr: http://www.flickr.com/photos/-nw-/4900267921/ • Éole @flickr: http://www.flickr.com/photos/eole/73301169/ • Saschaaa @ flickr: http://www.flickr.com/photos/saschaaa/152502539/ • Stefan Baudy @flick: http://www.flickr.com/photos/-bast-/349497988/ • RavenFire @flickr: http://www.flickr.com/photos/escapethematrix/525800552/ • Ka Lodger @flickr: http://www.flickr.com/photos/kaeau/31336163/ • Chris-Håvard Berge @flickr: http://www.flickr.com/photos/chberge/4113323306/ • Tara Hunt @flickr: http://www.flickr.com/photos/missrogue/199208087/