siren186 73df3689bf
enh(Poco::ActiveThreadPool): make it easy to use correctly (#4624)
* make Poco::ActiveThreadPool easy to use (#4544)

* code format

* Fix ThreadSanitizer thread leak error

* enh(ActivePooledThread): Change pointers to references

* enh(ActivePooledThread): remove unused method

* enh(Poco::ActiveThreadPool): Use std::unique_ptr instead of raw pointer

* enh(Poco::ActiveThreadPool): Use C++ static_cast instead of C casting

* enh(Poco::ActiveThreadPool): Use standard containers instead of implementing own

* enh(Poco::ActiveThreadPool): Change pointer to reference

* enh(Poco::ActiveThreadPool): Use smart pointers instead of bare pointers

* enh(Poco::ActiveThreadPool): Fix codeql warning: A stack address which arrived via a  may be assigned to a non-local variable.

* enh(Poco::ActiveThreadPool): More test case

* enh(Poco::ActiveThreadPool): std::optional::value unavailable on earlier macOS versions

* enh(Poco::ActiveThreadPool): Fix compare function for make heap

* enh(Poco::ActiveThreadPool): Add more test case

* enh(Poco::ActiveThreadPool): Add more test case

* enh(Poco::ActiveThreadPool): Code style

* enh(Poco::ActiveThreadPool): Test case

* enh(Poco::ActiveThreadPool): Test case

* enh(Poco::ActiveThreadPool): Fix test case error

* Revert "enh(Poco::ActiveThreadPool): std::optional::value unavailable on earlier macOS versions"

This reverts commit cba4673b47761192d118eadf320b92f880071404.

* enh(macOS): require min deployment macOS version 10.15 which has full support for C++17

* enh(Poco::ActiveThreadPool): Remove useless "{}"

* enh(Poco::ActiveThreadPool): Rename member variable m_impl to _impl

---------

Co-authored-by: Matej Kenda <matejken@gmail.com>
2024-08-30 11:54:44 +02:00
..
2024-04-03 22:38:56 +02:00
2024-04-03 22:38:56 +02:00
2023-10-04 10:09:55 +02:00
2022-07-06 10:46:38 -05:00

CMAKE Files contributed by Andrew J. P. Maclean <a.maclean@optusnet.com.au>


Put the following files in the directory where your source code is:
  CMakeLists.txt
  PocoConfig.cmake.

Edit CMakeLists.txt to include your source and header files. The sections of interest are:
# Add any source files here.
SET( EXE_SRCS
 "My File.cpp"
)
# Add any include files here.
SET( EXE_INCS
  "My File.h"
)

Then create a subdirectory called build.
In Linux:
cd build
ccmake ..
or
ccmake -GKDevelop3 ..
(This will set up everything so you can use KDevelop3).

In Windows:
run CMakeSetup.exe and set the source code directory and where to build the libraries.

If CMake cannot find Poco, you will see that the variable Poco_INCLUDE_DIR has the value Poco_INCLUDE_DIR-NOTFOUND. Just set this value to the top level direcotry of where the Poco includes are.

If there is a different version of Poco, you may have to add edit the variables SUFFIX_FOR_INCLUDE_PATH, and  SUFFIX_FOR_LIBRARY_PATH adding in the new Poco version in a similar manner to the existing ones in the file PocoConfig.cmake.

Finally:
In Linux
  Either type "make" or if you are using KDevelop, click on the <ProjectName>.kdevelop file.
In Windows just use your IDE or nmake if you use nmake.