多线程操作中,需注意互斥性和可见性,重点了解下可见性。
(一)可见性问题来源
1.cpu和内存速度相差过高,引入缓存(cache、寄存器等);一个线程由线程id、指令计数器PC、寄存器集合和堆栈构成,详见《程序员的自我修养》。
每个线程有自己的工作内存,修改进程主内存的值,都需要拷贝到工作内存修改后,再回写,其他现场可能出现,读取到未回写的脏数据。
2....
分类:
移动开发 时间:
2015-01-27 13:31:34
阅读次数:
181
自从接触了android,就开始使用ADB。
Android Debug Bridge,Android调试桥接器,简称adb,是用于管理模拟器或真机状态的万能工具,采用了客户端-服务器模型,包括三个部分:
1、客户端部分,运行在开发用的电脑上,可以在命令行中运行adb命令来调用该客户端,像ADB插件和DDMS这样的Android工具也可以调用adb客户端。
...
分类:
移动开发 时间:
2015-01-27 13:26:47
阅读次数:
382
安装完android studio,启动时碰到"failed to load jvm dll"的解决方案
安装Microsoft Visual C++ 2010 Redistributable Package
32 bit: http://www.microsoft.com/download/en/details.aspx?id=5555
64 bit: http://www.microsoft.com/download/en/details.aspx?id=14632
然后再运行Android Stud...
分类:
移动开发 时间:
2015-01-27 13:24:46
阅读次数:
2362
解决Android sdk docs(离线帮助文档)访问速度慢(访问失败)的问题...
分类:
移动开发 时间:
2015-01-27 13:24:08
阅读次数:
138
官网帮助文档链接:
http://developer.android.com/guide/components/fragments.html
主要看两张图,和跑代码
一,Fragment的生命周
二,与Activity生命周期的对比
场景演示 : 切换到该Fragment
11-29 14:26:35.095: D/...
分类:
移动开发 时间:
2015-01-27 13:22:46
阅读次数:
276
首先说下 ,xcconfig 的作用 ,在xcode中多人协作时,很容易发生冲突,尤其是项目的配置文件,仅仅是在build settings 修改一点东西
就出现巨大的冲突,commit 时在project setting 中就会发现N多有时会好几百修改,详情如图:
这是 xcconfig 就发挥强大的作用了,就可以通过 xcconfig 文件来解耦工程设置
注意xconfig不...
分类:
移动开发 时间:
2015-01-27 13:22:35
阅读次数:
138
在Android Studio开发工具中,开发app与使用eclipse时会有很大差异,尤其是文件表较多!但是在使用svn时究竟是哪些文件是必须的呢?
在 Android studio中,项目结构有如下文件及文件夹:app nanjing.iml build.gradle .gradle gradlew.bat local.properties settings.gradle
big...
分类:
移动开发 时间:
2015-01-27 13:21:46
阅读次数:
206
#01# TextView 和 ImageView TextView和Imageview切换卡顿,为了实现更好的切换,可以用动画来实现,系统自带的TextViewSwitcher 和ImageViewSwitcher,其中设置自定义动画,可以使用如下Demo:private TextSwitche....
分类:
移动开发 时间:
2015-01-27 13:17:31
阅读次数:
213
一、 安装教程:http://itbbs.pconline.com.cn/soft/50602805.html?qq-pf-to=pcqq.c2c二、 网络配置:在“虚拟机设置” 中将网络连接设置为 “NAT模式,共享主机的IP地址”。完~
分类:
移动开发 时间:
2015-01-27 13:17:13
阅读次数:
150
//把yyyymmdd转成yyyy-MM-dd格式 public static String formatDate(String str){ SimpleDateFormat sf1 = new SimpleDateFormat("yyyyMMdd"); SimpleDateFormat ...
分类:
移动开发 时间:
2015-01-27 13:14:13
阅读次数:
216
要实现双击,你需要保存第一次点击时的时间,需要使用到变量,之后便是与第二次点击时的时间比较,看时间间隔是否在你设定的时间内(比如500ms)。?1234567891011121314151617181920212223242526272829long firstClickTime = 0;long ...
分类:
移动开发 时间:
2015-01-27 13:15:52
阅读次数:
180
1.权限添加public static String getDataFolderPath(Context paramContext) {return Environment.getDataDirectory() + "/data/"+ paramContext.getPackageName() + ...
分类:
移动开发 时间:
2015-01-27 13:10:44
阅读次数:
155
http://www.robotium.cn/archives/995录制回放的方法大概了解了下,一般实现原理有:1.基于坐标的实现,monkeyrunner为主要代表.通过截屏获取屏幕,进行缩放解析动作点,monkeyrunner使用的截图方法效率较低,对于root的手机可以使用类似gsnap之类...
分类:
移动开发 时间:
2015-01-27 13:11:41
阅读次数:
174
一、目标 1、在主界面中通过“设置防盗密码”或者“输入防盗密码”后,对话框消失,并进入”手机防盗界面“。 2、进入是”手机防盗界面“时,根据有无完成”手机防盗设置向导“的情况进入不同的界面。若未完成,则进入向导界面,若已完成,则进入防盗界面。 二、代码实现。 1、在程序包(com.exam...
分类:
移动开发 时间:
2015-01-27 13:11:27
阅读次数:
163
首先,大家应该都明白的是委托是协议的一种,顾名思义,就是委托他人帮自己去做什么事。也就是当自己做什么事情不方便的时候,就可以建立一个委托,这样就可以委托他人帮自己去实现什么方法。其次,我简单的总结了一下自己用到的委托的作用有两个,一个是传值,一个是传事件。1.所谓传值经常用在b类要把自己的一个数据或...
分类:
移动开发 时间:
2015-01-27 13:07:30
阅读次数:
184
http://www.open-open.com/lib/view/open1392184864254.htmldp(dip): device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用...
分类:
移动开发 时间:
2015-01-27 13:08:09
阅读次数:
160