文档

base/callback.h中注释

作用

参数传递与函数调用分离,可异步调用 task包装callback通过message传递给另一线程执行

功能

callback本质上是对函数指针的封装,bind是把成员函数,函数等转化成callback对象。

关键对象

BindState<>由bind创建,callback保持。

产生

bind系列和callback系列都是由pump.py通过xxx.x.pump生成的。

限制

bind最多支持7个参数的函数转换。 类成员函数指针

class C;
class C {
public:
    void print(int x) {
        printf("%d\n", x);
    };
    int add(int x, int y) {
        return (x + y);
    };
};
int
main(int argc, char* argv[])
{
    C c;
    C* pc = new C();
    int (C::*add)(int,int);
    typedef void (C::*PF)(int);
    PF print = &C::print;
    add = 0;
    add = &C::add;
    int i = (c.*add)(5,6);
    (pc->*print)(i);
    return 0;
}

标签: chromium
日期: 2014-08-08 17:30:06, 10 years and 161 days ago
留言

回复不允许使用html标签

通过电子邮件通知我有后续评论.