scuffed-code/icu4c/source/test/intltest/tsmthred.h
Unknown User aa0b0a88e8 Initial revision
X-SVN-Rev: 2
1999-08-16 21:50:52 +00:00

64 lines
1.8 KiB
C++

/*
*****************************************************************************************
* *
* COPYRIGHT: *
* (C) Copyright International Business Machines Corporation, 1998 *
* Licensed Material - Program-Property of IBM - All Rights Reserved. *
* US Government Users Restricted Rights - Use, duplication, or disclosure *
* restricted by GSA ADP Schedule Contract with IBM Corp. *
* *
*****************************************************************************************
*/
#include "intltest.h"
#include "mutex.h"
/*
Test multithreading. Of course we need a thread class first..
this wrapper has a ported implementation.
*/
class SimpleThread
{
public:
SimpleThread();
virtual ~SimpleThread();
void start(void); // start the thread
public: // should be private, but then we couldn't be asocial.
virtual void run(void) = 0; // Override this to provide some real implementation
private:
void *fImplementation;
public:
static void sleep(int32_t millis); // probably shouldn't go here but oh well.
};
/**
* Tests actual threading
**/
class MultithreadTest : public IntlTest
{
public:
MultithreadTest();
~MultithreadTest();
void runIndexedTest( int32_t index, bool_t exec, char* &name, char* par = NULL );
/**
* test that threads even work
**/
void TestThreads(void);
/**
* test that mutexes work
**/
void TestMutex(void);
/**
* test that intl functions work in a multithreaded context
**/
void TestThreadedIntl(void);
};