想在线程池中加一个功能,加 task 的时候判断这个函数已经在池子里运行并且没有运行结束的话就不再重新 push,不修改业务代码的话,想到的一个方案就是在线程池里面维护一个 function 的 map 来判断,或者不直接对 function 做 hash,能把 function 转化成一个唯一的 string (类似函数签名)也可以,试了一下 typeid(function).name()发现普通函数可以,成员函数打印出来的都是类名,大佬们有啥好办法吗
1
shylockhg 2020-08-11 19:50:25 +08:00
函数指针
|
2
abbycin 2020-08-11 19:54:07 +08:00 via Android
abbycin/tools/tree/master/fm 可行?
|
3
winterfell30 OP @shylockhg 函数指针确实可以
|
4
winterfell30 OP @abbycin 哇我看一下多谢大佬
|
5
CismonX 2020-08-11 20:04:21 +08:00 via iPhone
std::type_info 的 name() 是不保证唯一性的,标准里有说。但是 std::type_index 可以。
|