![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
POCO
C++ POCO库
阿卡基-马
主要方向:嵌入式,图像处理,人工智能
展开
-
[C++ POCO] Poco::ThreadPool
线程池有一个最大容量,如果容量耗尽,则在请求新线程时抛出异常:Poco::NoThreadAvailableException。POCO中线程池类是Poco::ThreadPool,头文件:#include “Poco/ThreadPool.h”;当线程池中的线程空闲一定时间时,会被自动收集;也可以通过调用collect()来强制收集。POCO提供了一个默认的ThreadPool实例,初始容量为16个线程。线程池容量可以动态增加:void addCapacity(int n)原创 2024-07-05 09:13:20 · 91 阅读 · 0 评论 -
Poco 使用 use关键字时的注意事项
use关键字主要用于绑定变量到SQL语句中的占位符,它期望的是一个具体的变量或者可读取其值的对象。如果你尝试直接将一个计算表达式(比如加法、减法或其他更复杂的表达式)放在use后面,编译器将会报错,因为它期望的是一个左值引用,而不是一个临时的右值结果。在这个例子中,我们首先计算了someValue + anotherValue的结果,并将这个结果存储在了calculatedValue变量中。解决这个问题的一个常见方法是先计算表达式的值,然后将结果存储在一个变量中,再将该变量绑定到SQL语句中。原创 2024-06-11 17:14:49 · 379 阅读 · 0 评论 -
[C++ POCO] 信号量
在这个示例中,我们创建了一个Semaphore对象,并将初始值设置为1,表示只允许一个线程同时访问共享资源。然后我们创建了三个线程来访问共享资源,每个线程调用。Poco库中的信号量(Semaphore)是一种用于线程同步的工具,允许控制对共享资源的访问。它基本上是一个计数器,可以限制同时访问共享资源的线程数量。这样就确保了在任意时刻只有一个线程能够访问共享资源,从而避免了竞态条件和数据不一致的问题。来等待信号量可用,然后在临界区内访问共享资源,最后调用。在函数中,线程首先调用。原创 2024-04-16 19:12:48 · 227 阅读 · 0 评论