深入chromium中的多线程

  Callback 绑定到一个函数上。 绑定到一个类成员函数上。 Bind 动态绑定参数。 这个局部绑定函数内部是根据重载函数实现的,所以参数的顺序是绑定的放在前面,定义MyFunc时,未绑定的参数放在后面。 WeakPtr可取消task。 参数包装函数 base::Unretained()。解除传递给base::Bind()的第一个参数类成员函数的类必须是引用计数类型的限制。但是你需要确保参数的生命周期必须持续到callback执行完成。 base::Owned()。把一个原始指针的管理器转移给base::Callback。TaskRunners关闭的时候不能保证callbacks会被执行,所以把管理器转移给Callback,可以防资源泄漏。 base::Passed()。传递scoped对象的给callback。base::Passed()需要scoped的参数类型,这样意味着callback只能执行一次。 base::ConstRef()。把参数当作const... Read More | Share it now!

如何阅读一本书

曾经在很多个场合听说这本书,很多人称赞这本书,我也觉得这本书会给我带来很大的帮助。于是把这本书记在自己的书单里,准备有时间了好好学习学习。 几周前特意去图书馆借了这本书。刚拿到这本书的时候有些惊讶,原来这本书有这么厚啊,将近400页。我首先就产生了怀疑:这种讲解显而易见的技巧性书籍需要写这么厚吗,难道十几页几十页就不能阐述清楚? 接下来看书的过程发现这本书及其拖沓啰嗦,慢慢的耗尽了我的耐心。我从前几十页提炼出最重要的部分,你在阅读时要提出问题来——在阅读的过程中,你自己必须尝试去回答的问题: 整体来说,这本书到底在谈些什么?你一定要想办法找出这本书的主题,作者如何依次发展这个主题,如何逐步从核心主题分解出从属的关键议题来。 作者细说了什么,怎么说的?你一定要想办法找出主要的想法、声明与论点。这些组合成作者想要传达的特殊讯息... Read More | Share it now!