gfx/skia/trunk/src/utils/SkThreadUtils.h

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 /*
     2  * Copyright 2012 Google Inc.
     3  *
     4  * Use of this source code is governed by a BSD-style license that can be
     5  * found in the LICENSE file.
     6  */
     8 #ifndef SkThreadUtils_DEFINED
     9 #define SkThreadUtils_DEFINED
    11 #include "SkTypes.h"
    13 class SkThread : SkNoncopyable {
    14 public:
    15     typedef void (*entryPointProc)(void*);
    17     SkThread(entryPointProc entryPoint, void* data = NULL);
    19     /**
    20      * Non-virtual, do not subclass.
    21      */
    22     ~SkThread();
    24     /**
    25      * Starts the thread. Returns false if the thread could not be started.
    26      */
    27     bool start();
    29     /**
    30      * Waits for the thread to finish.
    31      * If the thread has not started, returns immediately.
    32      */
    33     void join();
    35     /**
    36      * SkThreads with an affinity for the same processor will attempt to run cache
    37      * locally with each other. SkThreads with an affinity for different processors
    38      * will attempt to run on different cores. Returns false if the request failed.
    39      */
    40     bool setProcessorAffinity(unsigned int processor);
    42 private:
    43     void* fData;
    44 };
    46 #endif

mercurial