摘要: Application.mkAPP_PROJECT_PATH项目路径APP_MODULES编译模块列表APP_OPTIMrelease/debug 不设则取决于manifest中的android:debuggable。 不建议设置。APP_CFLAGS传递给编译器的选项(C /C++),作用于所有模块APP_CPPFLAGS传递给编译器的选项(C++)-fexceptions 来支持C++异常-frtti 来支持RTTIAPP_BUILD_SCRIPT除了jni/Android.mk外,使用的其他mk文件APP_ABIabi列表例如:APP_ABI := armeabi armeabi-v7a 阅读全文
posted @ 2013-07-05 15:20 林间走寸 阅读(571) 评论(0) 推荐(0) 编辑
摘要: JAVA提供了以下的API用于获得精确的时间:System.currentTimeMillis //不建议,精度不够,修改系统时间会影响System.nanoTime //JAVA下推荐,精度没有android提供的好Android又补充了几个如下,更好些:Debug.threadCpuTimeNanos //只测量在当前线程中花费的时间SystemClock.currentThreadTimeMillis//在当前线程中已运行的时间SystemClock.elapsedRealtime //从开机到现在的毫秒(手机睡眠(sleep)的时间也包括在内)SystemClock... 阅读全文
posted @ 2013-07-05 12:07 林间走寸 阅读(265) 评论(0) 推荐(0) 编辑
摘要: java的内存模型有一个原则:线程中变量的修改可能不会立即对其他线程可见。如果是原子操作可以添加volatile关键字,也可以使用Atomic*这组类,但不太方便所以也很少被使用。我们常用synchronized来解决并发问题,虽然写起来非常方便,但synchronized是不区分读与写都会强制“同步”。ReentrantReadWriteLock 类就解决了synchronized 的读写区分问题。我们知道,线程如果当前在做写操作,就应该对变量加一把写锁。此时不允许其他线程读与写。线程如果当前在做读操作,就应该对变量加一把读锁。此时不允许其他线程写,但是可以允许读。ReentrantRead 阅读全文
posted @ 2013-07-05 11:47 林间走寸 阅读(179) 评论(0) 推荐(0) 编辑