summaryrefslogtreecommitdiffstats
path: root/ml/dlib/examples/threaded_object_ex.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ml/dlib/examples/threaded_object_ex.cpp')
-rw-r--r--ml/dlib/examples/threaded_object_ex.cpp79
1 files changed, 0 insertions, 79 deletions
diff --git a/ml/dlib/examples/threaded_object_ex.cpp b/ml/dlib/examples/threaded_object_ex.cpp
deleted file mode 100644
index 84fe10265..000000000
--- a/ml/dlib/examples/threaded_object_ex.cpp
+++ /dev/null
@@ -1,79 +0,0 @@
-// The contents of this file are in the public domain. See LICENSE_FOR_EXAMPLE_PROGRAMS.txt
-/*
-
- This is an example illustrating the use of the threaded_object
- from the dlib C++ Library.
-
-
- This is a very simple example. It creates a single thread that
- just prints messages to the screen.
-*/
-
-
-#include <iostream>
-#include <dlib/threads.h>
-#include <dlib/misc_api.h> // for dlib::sleep
-
-using namespace std;
-using namespace dlib;
-
-class my_object : public threaded_object
-{
-public:
- my_object()
- {
- // Start our thread going in the thread() function
- start();
- }
-
- ~my_object()
- {
- // Tell the thread() function to stop. This will cause should_stop() to
- // return true so the thread knows what to do.
- stop();
-
- // Wait for the thread to stop before letting this object destruct itself.
- // Also note, you are *required* to wait for the thread to end before
- // letting this object destruct itself.
- wait();
- }
-
-private:
-
- void thread()
- {
- // This is our thread. It will loop until it is told that it should terminate.
- while (should_stop() == false)
- {
- cout << "hurray threads!" << endl;
- dlib::sleep(500);
- }
- }
-};
-
-int main()
-{
- // Create an instance of our threaded object.
- my_object t;
-
- dlib::sleep(4000);
-
- // Tell the threaded object to pause its thread. This causes the
- // thread to block on its next call to should_stop().
- t.pause();
-
- dlib::sleep(3000);
- cout << "starting thread back up from paused state" << endl;
-
- // Tell the thread to unpause itself. This causes should_stop() to unblock
- // and to let the thread continue.
- t.start();
-
- dlib::sleep(4000);
-
- // Let the program end. When t is destructed it will gracefully terminate your
- // thread because we have set the destructor up to do so.
-}
-
-
-