Toast或者Dialog中都有一个Handler的成员变量,所以如果不是在主线程中使用Toast或Dialog,则需要在使用Toast或者Dialog的线程中初始化Looper。Looper.prepare();Toast.makeText(MainActivity.this,
"网络出错了", ...
分类:
其他好文 时间:
2014-05-01 02:04:03
阅读次数:
267
包含的属性scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。debug:当此属性设置为true时,将...
分类:
其他好文 时间:
2014-04-30 23:22:47
阅读次数:
361
方法一: 使用纯WIN32 DLL方法封装纯资源第一步,通过VS2005建立WIN32 DLL
空工程第二步,设置配置属性->链接器->高级->无入口点(是/NOENTRY)设置配置属性->C/C++->代码生成->运行时库(多线程/MT)第三步,加入图片资源并定义资源名称第四步,生成DLL,如Sk...
分类:
其他好文 时间:
2014-04-30 23:10:29
阅读次数:
470
windows下面可以主线程while loop接受input;但是觉得很丑。
linux没办法这样,可以用注册信号的办法。实现起来也不难:
#include "stdio.h"
#include "unistd.h"
#include "signal.h"
#include "error.h"
volatile bool isStop = false;
static void handl...
分类:
其他好文 时间:
2014-04-29 13:42:21
阅读次数:
418
自旋锁和互斥锁是多线程编程中的两个重要概念。他们都能用来锁定一些共享资源,以阻止影响数据一致性的并发访问。但是他们之间确实存在区别,那么这些区别是什么?
1 理论
理论上,当一个线程试图获取一个被锁定的互斥锁时,该操作会失败然后该线程会进入睡眠,这样就能马上让另一个线程运行。当持有互斥锁的线程释放该锁之后,进入睡眠状态的线程就会被唤醒。但是,当一个线程试图获取一个自旋锁而没有成功时,该线...
分类:
其他好文 时间:
2014-04-29 13:31:21
阅读次数:
317
基础篇
objective-c基础教程
iphone 开发秘籍
进阶篇
iOS 6编程实战
Objective-C 高级编程:iOS与OS X多线程和内存管理
Effective Objective-C 2.0:编写高质量iOS与OS X代码的52个有效方法...
分类:
移动开发 时间:
2014-04-29 13:25:21
阅读次数:
402
进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。
最近,我读到一篇材料,发现有一个很好的类比,可以把它们解释地清晰易懂。
1.
计算机的核心是CPU,它承担了所有的计算任务。它就像一座工厂,时刻在运行。
2.
假定工厂的电力有限,一次只能供给一个车间使用。也就是说,一个车间开工的时候,其他车间都必须停工。...
分类:
编程语言 时间:
2014-04-29 13:17:20
阅读次数:
276
进程的权限继承自创建进程用户和用户所属的用户组。用户有专用数据结构来表示权限—访问令牌(Access Token)。访问令牌包括两个部分:一个是令牌所表示的用户,包括用户标识符(SID),用户所属的用户组等;另一部分是“权限”(Privilege)。
在进程访问安全对象时,会用到SID。每个安全对象都有访问控制列表(ACL),ACL说明了哪些用户( SID)能访问本对象,哪些不能,以及能进行哪种...
分类:
其他好文 时间:
2014-04-29 13:13:21
阅读次数:
346
1.jvm 内存结构
1)程序计数器
较小的内存区域,可以看作是当前线程所执行的字节码的行号指示器;每条线程独立;
2)java虚拟机栈
描述java方法执行的内存模型,即每个方法在执行的同时都会创建一个栈帧用户存储局部变量表、操作数栈、动态链接、方法出口等信息;即一个方法的调用直至完成的过程对应着一个栈帧的入栈到出栈的过程。同样是线程私有;
3)本地方法栈
对应虚拟机使用的nativ...
分类:
编程语言 时间:
2014-04-27 22:12:22
阅读次数:
440
Cobar启动完成,监听特定端口。整个认证的流程图:NIOAcceptor类继承自Thread类,该类的对象会以线程的方式运行,进行连接的监听。NIOAcceptor启动的初始化过程如下:1 、打开一个selector,获取一个ServerSocketChannel对象,对该对象的socket绑定特定的监听端口,并设置该channel为非阻塞模式,然后想selector注册该channel,绑定感...
分类:
数据库 时间:
2014-04-27 21:47:07
阅读次数:
462