随笔分类 - linux|c|c++
摘要:使用场景 对底层代码进行 HOOK, 不可避免的要考虑多线程同步问题, 当然也可以写个类似 java 的线程本地变量来隔离内存空间。 死锁分析 恩, 道理其实大家都懂的, 毕竟大学就学了操作系统,理论神马的窝就不讲了哈, 这里说说我的处理方法。首先线程同步问题主要是多线程对相同的可写内存进行操作导致
阅读全文
摘要:最近在写底层hook的时候, 涉及到线程安全问题, 最开始我设计的时候使用的互斥量, 但是考虑到都是底层函数,加锁会导致性能问题, 一直在思考优化方案, 后来偶然想到,java里面有线程本地变量的API, 或许linux也有, 问过度娘后发现还真有对应的API, 而且c++11的标准库里面也有实现,
阅读全文
摘要:http://www.oschina.net/translate/cpp-virtual-inheritance 编译器会加入一些代码, 指针的转换操作编译器会自动加偏移
阅读全文
摘要:习惯了用java, 现在切换到c++遇到了一些很滑稽的问题, 特此记录。 一. 使用了野指针 都知道不能使用野指针, 指针定义后,要初始化为null, 我在项目里面默认构造函数里面确实初始化为null了, 但是在拷贝构造函数里面忘了,结果。。。 class A{ public: A():p(0){}
阅读全文
摘要:最近在搞jni, 所以又捡起了c++, java 和c++都是类c的语言, 所以相似度还是很高的, 这就导致了某些地方窝老是搞混, 比如类的实例化。 c++: | java: class A{ | public class A{ public: | public A(int i){}; A(int
阅读全文

浙公网安备 33010602011771号