From 273f732d8c8f3f709a2335278e66bfb47a5e2450 Mon Sep 17 00:00:00 2001 From: Jack Date: Tue, 12 Jul 2016 20:47:18 +0100 Subject: [PATCH] Switch to unique_ptr for thread pointers in TriviaGame --- TriviaBot/TriviaBot.vcxproj | 19 ++++---------- TriviaBot/TriviaBot.vcxproj.filters | 39 +++++------------------------ TriviaBot/bot/TriviaGame.cpp | 6 ++--- TriviaBot/bot/TriviaGame.hpp | 2 +- 4 files changed, 15 insertions(+), 51 deletions(-) diff --git a/TriviaBot/TriviaBot.vcxproj b/TriviaBot/TriviaBot.vcxproj index 5f50050..25c6c11 100644 --- a/TriviaBot/TriviaBot.vcxproj +++ b/TriviaBot/TriviaBot.vcxproj @@ -108,14 +108,14 @@ Disabled true _CRT_SECURE_NO_WARNINGS;CURL_STATICLIB;WIN32_WINNT=0x0600;URDL_NO_LIB=1;%(PreprocessorDefinitions) - C:\boost_1_61_0;C:\OpenSSL-Win64\include;C:\Users\Jack\Documents\GitHubVisualStudio\TriviaDiscord\lib\cpr\include;C:\Users\Jack\Documents\GitHubVisualStudio\TriviaDiscord\lib\websocketpp;C:\Users\Jack\Documents\GitHubVisualStudio\TriviaDiscord\lib\sqlite3;%(AdditionalIncludeDirectories) + C:\Users\Jack\Documents\GitHubVisualStudio\TriviaDiscord\lib\libcurl\include;C:\Users\Jack\Documents\GitHubVisualStudio\TriviaDiscord\lib\boost_1_61_0;C:\Users\Jack\Documents\GitHubVisualStudio\TriviaDiscord\lib\openssl\include;C:\Users\Jack\Documents\GitHubVisualStudio\TriviaDiscord\lib\websocketpp;C:\Users\Jack\Documents\GitHubVisualStudio\TriviaDiscord\lib\sqlite3;%(AdditionalIncludeDirectories) -D_SCL_SECURE_NO_WARNINGS -DUSE_SYSTEM_CURL=OFF -D_WIN32_WINNT=0x0A00 %(AdditionalOptions) $(IntDir)/%(RelativeDir)/ - libcurl.lib;sqlite3.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies) + libcurl.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies) /SUBSYSTEM:CONSOLE %(AdditionalOptions) - C:\buildcurl\third-party\libcurl\lib\dll-release-x64;C:\OpenSSL-Win64\lib;C:\boost_1_61_0\lib64-msvc-14.0;C:\Users\Jack\Documents\GitHubVisualStudio\TriviaDiscord\lib\sqlite3\x64;%(AdditionalLibraryDirectories) + C:\Users\Jack\Documents\GitHubVisualStudio\TriviaDiscord\lib\libcurl\lib\dll-release-x64;C:\Users\Jack\Documents\GitHubVisualStudio\TriviaDiscord\lib\openssl\lib;C:\Users\Jack\Documents\GitHubVisualStudio\TriviaDiscord\lib\boost_1_61_0\lib64-msvc-14.0;%(AdditionalLibraryDirectories) @@ -157,19 +157,10 @@ - - - - - - - - - - - + + diff --git a/TriviaBot/TriviaBot.vcxproj.filters b/TriviaBot/TriviaBot.vcxproj.filters index 75b1b57..944f356 100644 --- a/TriviaBot/TriviaBot.vcxproj.filters +++ b/TriviaBot/TriviaBot.vcxproj.filters @@ -42,44 +42,14 @@ Header Files + + Header Files + Source Files - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - Source Files @@ -98,6 +68,9 @@ Source Files + + Source Files + diff --git a/TriviaBot/bot/TriviaGame.cpp b/TriviaBot/bot/TriviaGame.cpp index 6a712a8..e5ad73f 100644 --- a/TriviaBot/bot/TriviaGame.cpp +++ b/TriviaBot/bot/TriviaGame.cpp @@ -212,7 +212,7 @@ void TriviaGame::question() { ah->send_message(channel_id, ":question: **(" + std::to_string(questions_asked) + "/" + std::to_string(total_questions) + ")** " + current_question); question_start = boost::posix_time::microsec_clock::universal_time(); - current_thread = boost::shared_ptr(new boost::thread(boost::bind(&TriviaGame::give_hint, this, 0, ""))); + current_thread = std::make_unique(boost::bind(&TriviaGame::give_hint, this, 0, "")); } void TriviaGame::give_hint(int hints_given, std::string hint) { @@ -277,9 +277,9 @@ void TriviaGame::give_hint(int hints_given, std::string hint) { } if (hints_given < 4) { - current_thread = boost::shared_ptr(new boost::thread(boost::bind(&TriviaGame::give_hint, this, hints_given, hint))); + current_thread = std::make_unique(boost::bind(&TriviaGame::give_hint, this, hints_given, hint)); } else { - current_thread = boost::shared_ptr(new boost::thread(boost::bind(&TriviaGame::question_failed, this))); + current_thread = std::make_unique(boost::bind(&TriviaGame::question_failed, this)); } } diff --git a/TriviaBot/bot/TriviaGame.hpp b/TriviaBot/bot/TriviaGame.hpp index 846159d..526427d 100644 --- a/TriviaBot/bot/TriviaGame.hpp +++ b/TriviaBot/bot/TriviaGame.hpp @@ -51,7 +51,7 @@ private: // std::map average_times; - boost::shared_ptr current_thread; + std::unique_ptr current_thread; boost::posix_time::ptime question_start; };