[Libreoffice-commits] online.git: tools/Connect.cpp tools/Stress.cpp tools/Tool.cpp
Pranam Lashkari (via logerrit)
logerrit at kemper.freedesktop.org
Wed Apr 8 15:22:30 UTC 2020
tools/Connect.cpp | 6 +-----
tools/Stress.cpp | 15 ++++++---------
tools/Tool.cpp | 13 ++++++-------
3 files changed, 13 insertions(+), 21 deletions(-)
New commits:
commit fba0be787f389d412691196da63488dc0f3369c5
Author: Pranam Lashkari <lpranam at collabora.com>
AuthorDate: Tue Nov 19 23:59:54 2019 +0530
Commit: Jan Holesovsky <kendy at collabora.com>
CommitDate: Wed Apr 8 17:22:10 2020 +0200
killpoco: removed Poco::Thread from tools directory
Change-Id: I3fc4a04c62a064eaefd5c31452abc4a7fe100fb4
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/83224
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
Reviewed-by: Jan Holesovsky <kendy at collabora.com>
diff --git a/tools/Connect.cpp b/tools/Connect.cpp
index 8593b0a35..a150bdf99 100644
--- a/tools/Connect.cpp
+++ b/tools/Connect.cpp
@@ -28,7 +28,6 @@
#include <Poco/Net/SSLManager.h>
#include <Poco/SharedPtr.h>
#include <Poco/TemporaryFile.h>
-#include <Poco/Thread.h>
#include <Poco/URI.h>
#include <Poco/Util/Application.h>
@@ -56,7 +55,6 @@ using Poco::Net::WebSocketException;
using Poco::Runnable;
using Poco::SharedPtr;
using Poco::TemporaryFile;
-using Poco::Thread;
using Poco::URI;
using Poco::Util::Application;
@@ -171,9 +169,7 @@ protected:
ws.setReceiveTimeout(0);
- Thread thread;
- Output output(ws);
- thread.start(output);
+ std::thread thread([&ws]{Output(ws).run();});
while (true)
{
diff --git a/tools/Stress.cpp b/tools/Stress.cpp
index b298951db..dc846771f 100644
--- a/tools/Stress.cpp
+++ b/tools/Stress.cpp
@@ -23,7 +23,6 @@
#include <Poco/Net/HTTPRequest.h>
#include <Poco/Net/HTTPResponse.h>
-#include <Poco/Thread.h>
#include <Poco/URI.h>
#include <Poco/Util/Application.h>
#include <Poco/Util/HelpFormatter.h>
@@ -55,7 +54,6 @@ protected:
int main(const std::vector<std::string>& args) override;
};
-using Poco::Thread;
using Poco::Util::Application;
using Poco::Util::HelpFormatter;
using Poco::Util::Option;
@@ -282,7 +280,8 @@ void Stress::handleOption(const std::string& optionName,
int Stress::main(const std::vector<std::string>& args)
{
- std::vector<std::unique_ptr<Thread>> clients(_numClients * args.size());
+ std::vector<std::thread> clients;
+ clients.reserve(_numClients * args.size());
if (args.size() == 0)
{
@@ -294,21 +293,19 @@ int Stress::main(const std::vector<std::string>& args)
std::vector<std::shared_ptr<Worker>> workers;
- unsigned index = 0;
for (size_t i = 0; i < args.size(); ++i)
{
std::cout << "Arg: " << args[i] << std::endl;
- for (unsigned j = 0; j < _numClients; ++j, ++index)
+ for (unsigned j = 0; j < _numClients; ++j)
{
workers.emplace_back(new Worker(_serverURI, args[i]));
- clients[index].reset(new Thread());
- clients[index]->start(*workers[workers.size() - 1]);
+ clients.emplace_back([&workers]{workers.back()->run();});
}
}
- for (const auto& client : clients)
+ for (auto& client : clients)
{
- client->join();
+ client.join();
}
if (Stress::Benchmark)
diff --git a/tools/Tool.cpp b/tools/Tool.cpp
index 91fe4600a..91c9164b6 100644
--- a/tools/Tool.cpp
+++ b/tools/Tool.cpp
@@ -16,6 +16,7 @@
#include <cstring>
#include <fstream>
#include <iostream>
+#include <thread>
#include <sysexits.h>
#include <Poco/Net/HTMLForm.h>
@@ -28,7 +29,6 @@
#include <Poco/Net/KeyConsoleHandler.h>
#include <Poco/Net/AcceptCertificateHandler.h>
#include <Poco/StreamCopier.h>
-#include <Poco/Thread.h>
#include <Poco/URI.h>
#include <Poco/Util/Application.h>
#include <Poco/Util/OptionSet.h>
@@ -69,7 +69,6 @@ using Poco::Net::HTTPClientSession;
using Poco::Net::HTTPRequest;
using Poco::Net::HTTPResponse;
using Poco::Runnable;
-using Poco::Thread;
using Poco::URI;
using Poco::Util::Application;
using Poco::Util::OptionSet;
@@ -250,26 +249,26 @@ int Tool::main(const std::vector<std::string>& origArgs)
return EX_NOINPUT;
}
- std::vector<std::unique_ptr<Thread>> clients(_numWorkers);
+ std::vector<std::thread> clients;
+ clients.reserve(_numWorkers);
size_t chunk = (args.size() + _numWorkers - 1) / _numWorkers;
size_t offset = 0;
for (unsigned i = 0; i < _numWorkers; i++)
{
- clients[i].reset(new Thread());
size_t toCopy = std::min(args.size() - offset, chunk);
if (toCopy > 0)
{
std::vector< std::string > files( toCopy );
std::copy( args.begin() + offset, args.begin() + offset + toCopy, files.begin() );
offset += toCopy;
- clients[i]->start(*(new Worker(*this, files)));
+ clients.emplace_back([this, &files]{Worker(*this, files).run();});
}
}
- for (unsigned i = 0; i < _numWorkers; i++)
+ for (auto& client: clients)
{
- clients[i]->join();
+ client.join();
}
return EX_OK;
More information about the Libreoffice-commits
mailing list