1/********************************************************************
2 * COPYRIGHT:
3 * Copyright (c) 1997-2009, International Business Machines Corporation and
4 * others. All Rights Reserved.
5 ********************************************************************/
6
7#ifndef SIMPLETHREAD_H
8#define SIMPLETHREAD_H
9
10#include "mutex.h"
11
12class U_EXPORT SimpleThread
13{
14public:
15    SimpleThread();
16    virtual  ~SimpleThread();
17    int32_t   start(void);        // start the thread
18    UBool     isRunning();        // return true if a started thread has exited.
19
20    virtual void run(void) = 0;   // Override this to provide the code to run
21                                  //   in the thread.
22    void *fImplementation;
23
24public:
25    static void sleep(int32_t millis); // probably shouldn't go here but oh well.
26    static void errorFunc();      // Empty function, provides a single convenient place
27                                  //   to break on errors.
28};
29
30#endif
31
32