aboutsummaryrefslogtreecommitdiff
path: root/src/util.h
diff options
context:
space:
mode:
authorGavin Andresen <gavinandresen@gmail.com>2015-04-02 12:04:59 -0400
committerGavin Andresen <gavinandresen@gmail.com>2015-05-14 12:50:42 -0400
commit9a1dcea2df2a6a89acf79bc41972e937d783a080 (patch)
treea442b42c60df35d3e95d313ba08a47a2a793af8d /src/util.h
parentddd0acd3dbbbf3e19d2379fc9b24e7ef5c2a8adb (diff)
downloadbitcoin-9a1dcea2df2a6a89acf79bc41972e937d783a080.tar.xz
Use CScheduler for net's DumpAddresses
Instead of starting Yet Another Thread to dump addresses, use CScheduler to do it.
Diffstat (limited to 'src/util.h')
-rw-r--r--src/util.h37
1 files changed, 0 insertions, 37 deletions
diff --git a/src/util.h b/src/util.h
index 483d9d7858..4cc0faf4d7 100644
--- a/src/util.h
+++ b/src/util.h
@@ -203,43 +203,6 @@ void SetThreadPriority(int nPriority);
void RenameThread(const char* name);
/**
- * Standard wrapper for do-something-forever thread functions.
- * "Forever" really means until the thread is interrupted.
- * Use it like:
- * new boost::thread(boost::bind(&LoopForever<void (*)()>, "dumpaddr", &DumpAddresses, 900000));
- * or maybe:
- * boost::function<void()> f = boost::bind(&FunctionWithArg, argument);
- * threadGroup.create_thread(boost::bind(&LoopForever<boost::function<void()> >, "nothing", f, milliseconds));
- */
-template <typename Callable> void LoopForever(const char* name, Callable func, int64_t msecs)
-{
- std::string s = strprintf("bitcoin-%s", name);
- RenameThread(s.c_str());
- LogPrintf("%s thread start\n", name);
- try
- {
- while (1)
- {
- MilliSleep(msecs);
- func();
- }
- }
- catch (const boost::thread_interrupted&)
- {
- LogPrintf("%s thread stop\n", name);
- throw;
- }
- catch (const std::exception& e) {
- PrintExceptionContinue(&e, name);
- throw;
- }
- catch (...) {
- PrintExceptionContinue(NULL, name);
- throw;
- }
-}
-
-/**
* .. and a wrapper that just calls func once
*/
template <typename Callable> void TraceThread(const char* name, Callable func)