787227d356
Testing: /m/s/skia (dm) $ d dm; and env GYP_DEFINES=skia_gpu=0 d dm ninja: Entering directory `out/Debug' ninja: no work to do. (294 GMs, 620 benches) x 4 configs, 245 tests 4507 tasks leftUnsupported vertex-color/texture xfer mode. Unsupported vertex-color/texture xfer mode. 0 tasks left 416.53user 9.86system 0:47.43elapsed 898%CPU (0avgtext+0avgdata 13353376maxresident)k 0inputs+0outputs (0major+3579906minor)pagefaults 0swaps ninja: Entering directory `out/Debug' [909/909] LINK dm (287 GMs, 612 benches) x 4 configs, 227 tests 0 tasks left 365.24user 7.71system 0:14.55elapsed 2562%CPU (0avgtext+0avgdata 14718912maxresident)k 0inputs+0outputs (0major+3328269minor)pagefaults 0swaps BUG=skia: R=bsalomon@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/213093004 git-svn-id: http://skia.googlecode.com/svn/trunk@13960 2bbb7eff-a529-9590-31e7-b0007b416f81
32 lines
686 B
C++
32 lines
686 B
C++
#ifndef DMTaskRunner_DEFINED
|
|
#define DMTaskRunner_DEFINED
|
|
|
|
#include "DMGpuSupport.h"
|
|
#include "SkThreadPool.h"
|
|
#include "SkTypes.h"
|
|
|
|
// TaskRunner runs Tasks on one of two threadpools depending on the need for a GrContextFactory.
|
|
// It's typically a good idea to run fewer GPU threads than CPU threads (go nuts with those).
|
|
|
|
namespace DM {
|
|
|
|
class CpuTask;
|
|
class GpuTask;
|
|
|
|
class TaskRunner : SkNoncopyable {
|
|
public:
|
|
explicit TaskRunner(int cpuThreads, int gpuThreads);
|
|
|
|
void add(CpuTask* task);
|
|
void add(GpuTask* task);
|
|
void wait();
|
|
|
|
private:
|
|
SkTThreadPool<void> fCpu;
|
|
SkTThreadPool<GrContextFactory> fGpu;
|
|
};
|
|
|
|
} // namespace DM
|
|
|
|
#endif // DMTaskRunner_DEFINED
|