﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	resolution	keywords	cc	phab_field
5874	Threading improvements	wraitii		"There are issues with our implementation: we use ""naked"" std::thread instead of cleverer solutions.
This, notably, means we fail to detect exceptions happening in the threads (see https://code.wildfiregames.com/rP22649#45341 )

[25656] implements a task manager. Now not every task wich is run concurently does need to create it's own std::thread.

Phab:D4956 does implement exception handling for tasks in the task manager.

These tasks use the task manager:
- map generator
- pathfinder

These tasks should be adapted to use the task manager:
- texture converter Phab:D4425

A task in the task manager should never 'wait' (for a condition_variable; for a mutex; for some time...) that would put the whole thread to sleep. Instead it would be better to run another task in the meantime and resume the original task later. Phab:D3877 or Phab:D4907 does extend the task manager to make that possible. These tasks rely on such a feature:
- net client (net session) Phab:D3877
- net server
- sound
- user reporter Phab:D4426"	task	new	Must Have	Work In Progress	Core engine				Phab:D3848
