Eine Workcrew ist ein Datenparalleles Programmiermodell, das wie folgt funktioniert:

  • Master - Generiert Workerthreads und wartet danach bis diese terminieren
  • Worker - Verwenden alle eine gemeinsame, statische Datenquelle

  • Gut geeignet für Verfahren mit unveränderlicher Eingabe, z.B. (Datenbank-)Suchmaschine

Beispiel

int main(int argc, char **argv) {
	pthread_create(... thread1 ... taskX);
	pthread_create(... thread2 ... taskY);
	// ...
 
	suspend( ) // wait for all workers to finish
	}
}
void *taskX(void *data) { ... } // process taskX
void *taskY(void *data) { ... } // process taskY