Index: tests/PathOpsSkpClipTest.cpp |
diff --git a/tests/PathOpsSkpClipTest.cpp b/tests/PathOpsSkpClipTest.cpp |
index cdc3c1fcd910d8e2c2062e078126cb9c84b80bab..076914168558283fd32d61d3861e0f1d537b6f8e 100755 |
--- a/tests/PathOpsSkpClipTest.cpp |
+++ b/tests/PathOpsSkpClipTest.cpp |
@@ -20,8 +20,8 @@ |
#include "SkString.h" |
#include "SkTArray.h" |
#include "SkTDArray.h" |
+#include "SkTaskGroup.h" |
#include "SkTemplates.h" |
-#include "SkThreadPool.h" |
#include "SkTime.h" |
__SK_FORCE_IMAGE_DECODER_LINKING; |
@@ -90,14 +90,14 @@ static SkString get_in_path(int dirNo, const char* filename) { |
} |
if (filename) { |
path.appendf("%s%s", PATH_SLASH, filename); |
- if (!sk_exists(path.c_str())) { |
+ if (!sk_exists(path.c_str())) { |
SkDebugf("could not read %s\n", path.c_str()); |
return SkString(); |
} |
} |
return path; |
} |
- |
+ |
static void make_recursive_dir(const SkString& path) { |
if (sk_exists(path.c_str())) { |
return; |
@@ -129,7 +129,7 @@ static SkString get_out_path(int dirNo, const char* dirName) { |
make_recursive_dir(path); |
return path; |
} |
- |
+ |
static SkString get_sum_path(const char* dirName) { |
SkString path; |
SkASSERT(dirName); |
@@ -166,12 +166,12 @@ struct TestResult { |
fTestStep = kCompareBits; |
fScale = 1; |
} |
- |
+ |
void init(int dirNo, const SkString& filename) { |
fDirNo = dirNo; |
strcpy(fFilename, filename.c_str()); |
fTestStep = kCompareBits; |
- fScale = 1; |
+ fScale = 1; |
} |
SkString status() { |
@@ -204,7 +204,7 @@ struct TestResult { |
} |
void testOne(); |
- |
+ |
char fFilename[kMaxLength]; |
TestStep fTestStep; |
int fDirNo; |
@@ -245,13 +245,8 @@ struct TestState { |
}; |
struct TestRunner { |
- TestRunner(int threadCount) |
- : fNumThreads(threadCount) { |
- } |
- |
~TestRunner(); |
void render(); |
- int fNumThreads; |
SkTDArray<class TestRunnable*> fRunnables; |
}; |
@@ -300,9 +295,9 @@ TestRunner::~TestRunner() { |
} |
void TestRunner::render() { |
- SkThreadPool pool(fNumThreads); |
+ SkTaskGroup tg; |
for (int index = 0; index < fRunnables.count(); ++ index) { |
- pool.add(fRunnables[index]); |
+ tg.add(fRunnables[index]); |
} |
} |
@@ -531,18 +526,12 @@ DEFINE_string2(dir, d, NULL, "range of directories (e.g., 1-100)"); |
DEFINE_string2(skp, s, NULL, "skp to test"); |
DEFINE_bool2(single, z, false, "run tests on a single thread internally."); |
DEFINE_int32(testIndex, 0, "override local test index (PathOpsSkpClipOneOff only)."); |
-DEFINE_int32(threads, SkThreadPool::kThreadPerCore, |
- "Run threadsafe tests on a threadpool with this many threads."); |
DEFINE_bool2(verbose, v, false, "enable verbose output."); |
static bool verbose() { |
return FLAGS_verbose; |
} |
-static int getThreadCount() { |
- return FLAGS_single ? 1 : FLAGS_threads; |
-} |
- |
class Dirs { |
public: |
Dirs() { |
@@ -616,7 +605,7 @@ public: |
} |
return NULL; |
} |
- |
+ |
void set(const SkCommandLineFlags::StringArray& names) { |
fNames = &names; |
} |
@@ -626,7 +615,7 @@ private: |
const SkCommandLineFlags::StringArray* fNames; |
} gNames; |
-static bool buildTestDir(int dirNo, int firstDirNo, |
+static bool buildTestDir(int dirNo, int firstDirNo, |
SkTDArray<TestResult>* tests, SkTDArray<SortByName*>* sorted) { |
SkString dirName = get_out_path(dirNo, outStatusDir); |
if (!dirName.size()) { |
@@ -792,8 +781,7 @@ static void encodeFound(TestState& state) { |
} |
} |
} |
- int threadCount = getThreadCount(); |
- TestRunner testRunner(threadCount); |
+ TestRunner testRunner; |
for (int index = 0; index < state.fPixelWorst.count(); ++index) { |
const TestResult& result = state.fPixelWorst[index]; |
SkString filename(result.fFilename); |
@@ -865,8 +853,7 @@ static void testSkpClipMain(TestState* data) { |
DEF_TEST(PathOpsSkpClipThreaded) { |
gDirs.setDefault(); |
initTest(); |
- int threadCount = getThreadCount(); |
- TestRunner testRunner(threadCount); |
+ TestRunner testRunner; |
int dirNo; |
gDirs.reset(); |
while ((dirNo = gDirs.next()) > 0) { |
@@ -889,7 +876,7 @@ DEF_TEST(PathOpsSkpClipThreaded) { |
} |
encodeFound(state); |
} |
- |
+ |
static bool buildTests(SkTDArray<TestResult>* tests, SkTDArray<SortByName*>* sorted) { |
int firstDirNo = gDirs.first(); |
int dirNo; |
@@ -912,8 +899,7 @@ DEF_TEST(PathOpsSkpClipUberThreaded) { |
if (!buildTests(tests.get(), sorted.get())) { |
return; |
} |
- int threadCount = getThreadCount(); |
- TestRunner testRunner(threadCount); |
+ TestRunner testRunner; |
int dirNo; |
gDirs.reset(); |
while ((dirNo = gDirs.next()) > 0) { |