From 048519c1a52a75ebc202394033d4ff5e1478aacb Mon Sep 17 00:00:00 2001 From: EntireTwix Date: Sat, 3 Apr 2021 00:15:59 -0700 Subject: [PATCH] :construction: working on main --- CMakeLists.txt | 2 +- main.cpp | 26 +++++++++++++++++++------- 2 files changed, 20 insertions(+), 8 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index af7a92a..f84d4d6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.10) -project(main) +project(bank) set (CMAKE_CXX_STANDARD 17) if(NOT CMAKE_BUILD_TYPE) diff --git a/main.cpp b/main.cpp index 9906fdf..ec820a6 100644 --- a/main.cpp +++ b/main.cpp @@ -3,16 +3,28 @@ #include #include "bank.hpp" -int main() +int main(int argc, char **argv) { - std::thread([&]() { - for (int i = 0; i < 10000; ++i) + if (argc != 5) + { + std::cerr << "Usage: sudo ./bank \n"; + return 0; + } + if ((argv[3][0] != '0' && argv[3][0] != '1')) + { + std::cerr << "run in background state must be 1 or 0\n"; + return 0; + } + + //Auto Saving + volatile bool saving_flag = true; + std::thread([&argv, &saving_flag]() { + while (saving_flag) { - Bank.AddUser(std::to_string(i), "root"); + std::this_thread::sleep_for(std::chrono::minutes(std::stoi(argv[2]))); + Bank.Save(); } }).detach(); - std::this_thread::sleep_for(std::chrono::nanoseconds(10)); - Bank.Save(); - std::this_thread::sleep_for(std::chrono::seconds(1)); + return 0; } \ No newline at end of file