#ifndef MULTI_DOWNLOAD_H #define MULTI_DOWNLOAD_H #include #include #include #include class CTimer { using time_point_t = std::chrono::high_resolution_clock::time_point; public: CTimer() = default; ~CTimer() = default; public: void start(); // 秒种 size_t getTime(); private: time_point_t m_start; time_point_t m_end; }; class CThreadDownload { public: CThreadDownload(); ~CThreadDownload(); public: double getFileLength(const char* url); int download(const char* url, const char* filename); static size_t writeFunCall(void* ptr, size_t size, size_t mmb, void* userdata); private: std::ofstream m_fstream; }; #endif