Choose to use std::async for now to implement multi-threaded compiles. This should work across platforms and also be usable for other threading tasks. Note that std::async does not have a good way to wait for multiple std::futures. Also the Linux compile of std::async is broken due to a bug in an old STL version, so disable it on this platform. The implementation uses a static polymorphism approach, which should have very good performance (no virtual calls). This design leaves the door open for other future implementations, such as a Win32 thread pool, or one based on angle::Platform. BUG=angleproject:422 Change-Id: Ia2f13c3af0339efaca1d19b40b3e08ecca61b8e8 Reviewed-on: https://chromium-review.googlesource.com/413712 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:Geoff Lang <geofflang@chromium.org>
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| d3d11 | Loading commit data... | |
| d3d9 | Loading commit data... | |
| BufferD3D.cpp | Loading commit data... | |
| BufferD3D.h | Loading commit data... | |
| CompilerD3D.cpp | Loading commit data... | |
| CompilerD3D.h | Loading commit data... | |
| DeviceD3D.cpp | Loading commit data... | |
| DeviceD3D.h | Loading commit data... | |
| DisplayD3D.cpp | Loading commit data... | |
| DisplayD3D.h | Loading commit data... | |
| DynamicHLSL.cpp | Loading commit data... | |
| DynamicHLSL.h | Loading commit data... | |
| EGLImageD3D.cpp | Loading commit data... | |
| EGLImageD3D.h | Loading commit data... | |
| FramebufferD3D.cpp | Loading commit data... | |
| FramebufferD3D.h | Loading commit data... | |
| HLSLCompiler.cpp | Loading commit data... | |
| HLSLCompiler.h | Loading commit data... | |
| ImageD3D.cpp | Loading commit data... | |
| ImageD3D.h | Loading commit data... | |
| IndexBuffer.cpp | Loading commit data... | |
| IndexBuffer.h | Loading commit data... | |
| IndexDataManager.cpp | Loading commit data... | |
| IndexDataManager.h | Loading commit data... | |
| NativeWindowD3D.cpp | Loading commit data... | |
| NativeWindowD3D.h | Loading commit data... | |
| ProgramD3D.cpp | Loading commit data... | |
| ProgramD3D.h | Loading commit data... | |
| RenderTargetD3D.cpp | Loading commit data... | |
| RenderTargetD3D.h | Loading commit data... | |
| RenderbufferD3D.cpp | Loading commit data... | |
| RenderbufferD3D.h | Loading commit data... | |
| RendererD3D.cpp | Loading commit data... | |
| RendererD3D.h | Loading commit data... | |
| SamplerD3D.h | Loading commit data... | |
| ShaderD3D.cpp | Loading commit data... | |
| ShaderD3D.h | Loading commit data... | |
| ShaderExecutableD3D.cpp | Loading commit data... | |
| ShaderExecutableD3D.h | Loading commit data... | |
| SurfaceD3D.cpp | Loading commit data... | |
| SurfaceD3D.h | Loading commit data... | |
| SwapChainD3D.cpp | Loading commit data... | |
| SwapChainD3D.h | Loading commit data... | |
| TextureD3D.cpp | Loading commit data... | |
| TextureD3D.h | Loading commit data... | |
| TextureStorage.h | Loading commit data... | |
| VaryingPacking.cpp | Loading commit data... | |
| VaryingPacking.h | Loading commit data... | |
| VertexBuffer.cpp | Loading commit data... | |
| VertexBuffer.h | Loading commit data... | |
| VertexDataManager.cpp | Loading commit data... | |
| VertexDataManager.h | Loading commit data... | |
| WorkaroundsD3D.h | Loading commit data... | |
| formatutilsD3D.h | Loading commit data... |