Chunel

Results 35 comments of Chunel

push 的时候,如果 push失败,是否可以本地缓存起来?

![image](https://github.com/ChunelFeng/CGraph/assets/37905059/68a32a4e-0350-43ab-a824-65d4d812e8f5)

> ![image](https://github.com/ChunelFeng/CGraph/assets/37905059/68a32a4e-0350-43ab-a824-65d4d812e8f5) > > 但是这样,可能会导致个别情况下,个别队列无法盗取。因为本来数据就不是 原子的。应该抛弃这种方式了

可以考虑,thread 中,添加一个 bool变量,标记是否有内容可以偷

批主想知道,你打算如何修改这一块的内容呢?

# 优化后 [2024-03-10 18:12:26.013] [test_performance_01]: time counter is : [8992.88] ms [2024-03-10 18:12:35.042] [test_performance_01]: time counter is : [9028.09] ms [2024-03-10 18:12:43.957] [test_performance_01]: time counter is : [8914.46] ms [2024-03-10...

如果采用这种方法,性能反而是下降的 ```cpp CVoid GDynamicEngine::parallelRunAll() { parallel_finished_size_ = 0; for (auto element : total_element_arr_) { const auto& exec = [element, this] { if (unlikely(cur_status_.isErr())) { /** * 如果已经有异常逻辑, * 或者传入的element,是已经执行过的了(理论上不会出现这种情况,由于提升性能的原因,取消了atomic计数的逻辑,故添加这一处判定,防止意外情况) *...

哦哦,这一块已经有人在做了,最近就会 pr 回来。感谢您的关注

你好,一直轮询可能引起空转,使用时候建议小心。 本项目通过调整 CGRAPH_PRIMARY_THREAD_BUSY_EPOCH 的值,达到一直轮询的效果, 如有使用需求,推荐使用 CStatus setConfig(const UThreadPoolConfig &config); 接口设置。