Blender Git Loki
October 18, 2015, 16:32 (GMT) |
Address Brecht's review, mainly: * Simplifies handling of 'background fallback thread' in scheduler * Add note (and debug check) that background pools do not get created recursively (from other task pools). |
October 18, 2015, 13:19 (GMT) |
Cleanup: factorize task data freeing into own func, much less verbose that way. |
October 18, 2015, 13:09 (GMT) |
On second thought, add a new API func to create a 'background' task pool. Will make the patch less verbose since it avoids changing existing code. |
October 18, 2015, 12:54 (GMT) |
Merge branch 'master' into new-filebrowser-preview-temp |
October 18, 2015, 10:55 (GMT) |
Merge branch 'master' into new-filebrowser-preview-temp |
October 8, 2015, 13:32 (GMT) |
Merge branch 'master' into new-filebrowser-preview-temp |
October 1, 2015, 18:44 (GMT) |
BLI_task: add optional 'forced background' behavior to pools, and freefunc to tasks. Currently, task scheduler in mono-threaded context do not have any worker thread, which means you have to 'work_and_wait' on a pool to get its tasks done in this context. This is not suitable for that are to be done in a complete asynchronous, background fashion, so this commit adds: * One worker thread to scheduler in case none is created by default; * That worker thread only execute tasks from pools which have relevant option set (so-called 'forced background' pools). This commit also adds an optional freefunc callback to tasks, in case we need more sofisticated behavior that a mere MEM_freeN... |
October 1, 2015, 18:44 (GMT) |
FileBrowser Preview: Rework code to make proper usage of tasks, pool and scheduler. So now each and every preview is a task, this allows us to get rid of quite a bit of stuff. We still need a 'done' queue though (otherwise we'd need to directly update cached entries from thread/task, which is absolutely not desired!). |