摘要: 参考资料: ReferenceQueue食用手册 java引用食用手册 ReferenceQueue源代码里面很好的展示了java队列的实现思路, 以及多线程观察者的实现思路 多线程观察者实现思路: 入队的时候, 调用notify()方法 remove方法调用的时候,如果对列不为空, 出队列, 方法 阅读全文
posted @ 2016-12-14 17:54 章炎 阅读(364) 评论(0) 推荐(0) 编辑
摘要: 这种问题一般是android.mk里面没有找到对应的源文件 http://stackoverflow.com/questions/11570167/android-ndk-no-rule-to-make-target 注意源文件的路径,LOCAL_SRC_FILES 的路径是相对于 LOCAL_PA 阅读全文
posted @ 2016-11-17 16:23 章炎 阅读(948) 评论(0) 推荐(0) 编辑
摘要: 嘛, 直接上代码 这个类加载器的作用是, 如果加载的类前缀为 com.squareup.okhttp, 那么就重项目的根目录的doc/jar/下的okhttp-1.2.1.jar和okhttp-protocols-1.2.1.jar中去加载。 注意jar包是一个归档文件, 里面的实例名称是这样的 所 阅读全文
posted @ 2016-11-14 18:08 章炎 阅读(1595) 评论(0) 推荐(0) 编辑
摘要: 导入eclipse工程到intellij里面, 然后出现各种错误, xxx.R文件重复, 各种资源id在R文件中找不到, 后来发现是intellij默认将整个项目以及gen文件夹作为源代码目录了, 在模块设置里面将他们取消, 只保留src作为源代码目录即可 阅读全文
posted @ 2016-10-24 16:26 章炎 阅读(245) 评论(0) 推荐(0) 编辑
摘要: 切片是啥, 可以吃么 切片肿么用哈 辣么长,记不住 切片是啥, 可以吃么 嘛,所谓切片故名思意就有选取的意思啦, 跟java里面的subString()意思差不多, 从原始的字符串中按规则提取出新的字符串 切片肿么用哈 切片的用法很简单, 可以提取一个list或者tuple的部分元素, 比如,一个l 阅读全文
posted @ 2016-10-22 21:27 章炎 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 这个有什么用 案例 参考资料 这个有什么用 嘛, 不管写博客,还是公司的wiki,一般开头都会有个目录什么的, 这时候命名描就有用了, 所谓的描就是书签。 案例 比如这篇博客的目录,首先建立一个无序列表,写好目录 然后选中对应的文字建立链接,注意链接的URL写成描点的方式,目标设置为页面内 最后选 阅读全文
posted @ 2016-10-16 18:59 章炎 阅读(347) 评论(0) 推荐(0) 编辑
摘要: 最近在写底层hook的时候, 涉及到线程安全问题, 最开始我设计的时候使用的互斥量, 但是考虑到都是底层函数,加锁会导致性能问题, 一直在思考优化方案, 后来偶然想到,java里面有线程本地变量的API, 或许linux也有, 问过度娘后发现还真有对应的API, 而且c++11的标准库里面也有实现, 阅读全文
posted @ 2016-10-16 18:33 章炎 阅读(1190) 评论(0) 推荐(0) 编辑
摘要: http://www.oschina.net/translate/cpp-virtual-inheritance 编译器会加入一些代码, 指针的转换操作编译器会自动加偏移 阅读全文
posted @ 2016-10-16 13:37 章炎 阅读(122) 评论(0) 推荐(0) 编辑
摘要: Cmake http://blog.csdn.net/u012527560/article/details/51752070 http://wenku.baidu.com/link?url=ENJF4OHVWII3vhl1Kkn3vTvb0sDH2u7Uz781JvhtvDLBjlL1q-dhytN 阅读全文
posted @ 2016-09-26 15:27 章炎 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 写脚本的时候难免会判断变量是否为空或者为定义 变量a未定义 if [ -n $a ];then echo "exists"; else echo "not exists";fi 结果输出: exists 瞬间瞎了, 不过改成这样就可以了 if [ -n "$a" ] 当然这里的a是脚本输入的参数, 阅读全文
posted @ 2016-09-23 12:07 章炎 阅读(108) 评论(0) 推荐(0) 编辑