当前位置:  编程技术>移动开发
本页文章导读:
    ▪致念vm装黑苹果网速不给力的屌丝        致想vm装黑苹果网速不给力的屌丝 #致想vm装黑苹果网速不给力的屌丝# 1.一般拿过来的mac系统dmg都是低版本 大多10.6 而第一个稳定版本xcode为3.2.6需系统10.6.6方可安装。常识还是要了解··若有.........
    ▪ 关于在xcode中使用Versions时,比较文件出现The File Merge application could not be located. 解决办法        关于在xcode中使用Versions时,比较文件出现The File Merge application could not be located. 解决方法 前提:1. 已经正确的安装来xCode2. 已经正确的安装Versions,并能从Svn服务器上下载得到代码了出现的.........
    ▪ 高性能IO设计的Reactor跟Proactor模式(转)       高性能IO设计的Reactor和Proactor模式(转)   转自http://xmuzyq.iteye.com/blog/783218  在高性能的I/O设计中,有两个比较著名的模式Reactor和Proactor模式,其中Reactor模式用于同步I/O,而Proactor运用于异步I/O.........

[1]致念vm装黑苹果网速不给力的屌丝
    来源: 互联网  发布时间: 2014-02-18
致想vm装黑苹果网速不给力的屌丝

#致想vm装黑苹果网速不给力的屌丝#

1.一般拿过来的mac系统dmg都是低版本 大多10.6 而第一个稳定版本xcode为3.2.6需系统10.6.6方可安装。常识还是要了解··若有条件请下载10.7.3以上系统版本直接4.3搞起

2.网速慢的屌丝只能步步升级Software Update直接五国,升级包最好用Combo,不然逐号向上升会被烦shi

3.vm装完一个版本snapshot ,这样即使五国了,还可以恢复下

4.完成后会提示需要restart,千万不要!,到System/Library/Exten*****目录下把SleepEnabler.kext删除~

5.实验证实其实可以通过修改版本号的方式安装高版本xcode 为了稳定 偶还是一步步升级安装的···希望大家勇于尝试··


    
[2] 关于在xcode中使用Versions时,比较文件出现The File Merge application could not be located. 解决办法
    来源: 互联网  发布时间: 2014-02-18
关于在xcode中使用Versions时,比较文件出现The File Merge application could not be located. 解决方法
前提:

1. 已经正确的安装来xCode

2. 已经正确的安装Versions,并能从Svn服务器上下载得到代码了

出现的错误:

用Versions比较修改文件和Svn的文件时,出现如下问题:

The File Merge application could not be located. 
解决方法是:

打开终端:

输入如下命令:
sudo xcode-select -switch /Applications/Xcode.app


然后输入密码就可以来

注意:/Applications/Xcode.app  是你xcode的路径

    
[3] 高性能IO设计的Reactor跟Proactor模式(转)
    来源: 互联网  发布时间: 2014-02-18
高性能IO设计的Reactor和Proactor模式(转)

 

转自http://xmuzyq.iteye.com/blog/783218 


在高性能的I/O设计中,有两个比较著名的模式Reactor和Proactor模式,其中Reactor模式用于同步I/O,而Proactor运用于异步I/O操作。


       在比较这两个模式之前,我们首先的搞明白几个概念。


       什么是阻塞和非阻塞:

       而阻塞和非阻塞是针对于进程在访问数据的时候,根据IO操作的就绪状态来采取的不同方式,说白了是一种读取或者写入操作函数的实现方式,阻塞方式下读取或者写入函数将一直等待,而非阻塞方式下,读取或者写入函数会立即返回一个状态值。


       什么是同步和异步:

       同步和异步是针对应用程序和内核的交互而言的,同步指的是用户进程触发IO操作并等待或者轮询的去查看IO操作是否就绪,而异步是指用户进程触发IO操作以后便开始做自己的事情,而当IO操作已经完成的时候会得到IO完成的通知。

  

一般来说I/O模型可以分为:同步阻塞,同步非阻塞,异步阻塞,异步非阻塞IO。


   同步阻塞IO:

   在此种方式下,用户进程在发起一个IO操作以后,必须等待IO操作的完成,只有当真正完成了IO操作以后,用户进程才能运行。JAVA传统的IO模型属于此种方式!


   同步非阻塞IO:

在此种方式下,用户进程发起一个IO操作以后边可返回做其它事情,但是用户进程需要时不时的询问IO操作是否就绪,这就要求用户进程不停的去询问,从而引入不必要的CPU资源浪费。其中目前JAVA的NIO就属于同步非阻塞IO。


   异步阻塞IO:

   此种方式下是指应用发起一个IO操作以后,不等待内核IO操作的完成,等内核完成IO操作以后会通知应用程序,这其实就是同步和异步最关键的区别,同步必须等待或者主动的去询问IO是否完成,那么为什么说是阻塞的呢?因为此时是通过select系统调用来完成的,而select函数本身的实现方式是阻塞的,而采用select函数有个好处就是它可以同时监听多个文件句柄,从而提高系统的并发性!


   异步非阻塞IO:

   在此种模式下,用户进程只需要发起一个IO操作然后立即返回,等IO操作真正的完成以后,应用程序会得到IO操作完成的通知,此时用户进程只需要对数据进行处理就好了,不需要进行实际的IO读写操作,因为真正的IO读取或者写入操作已经由内核完成了。目前Java中还没有支持此种IO模型。   


     搞清楚了以上概念以后,我们再回过头来看看,Reactor模式和Proactor模式。


首先来看看Reactor模式,Reactor模式应用于同步I/O的场景。我们分别以读操作和写操作为例来看看Reactor中的具体步骤:

读取操作:

1. 应用程序注册读就需事件和相关联的事件处理器

2. 事件分离器等待事件的发生

3. 当发生读就需事件的时候,事件分离器调用第一步注册的事件处理器

4. 事件处理器首先执行实际的读取操作,然后根据读取到的内容进行进一步的处理

写入操作类似于读取操作,只不过第一步注册的是写就绪事件。


下面我们来看看Proactor模式中读取操作和写入操作的过程:

读取操作:

1. 应用程序初始化一个异步读取操作,然后注册相应的事件处理器,此时事件处理器不关注读取就绪事件,而是关注读取完成事件,这是区别于Reactor的关键。

2. 事件分离器等待读取操作完成事件

3. 在事件分离器等待读取操作完成的时候,操作系统调用内核线程完成读取操作,并将读取的内容放入用户传递过来的缓存区中。这也是区别于Reactor的一点,Proactor中,应用程序需要传递缓存区。

4. 事件分离器捕获到读取完成事件后,激活应用程序注册的事件处理器,事件处理器直接从缓存区读取数据,而不需要进行实际的读取操作。


Proactor中写入操作和读取操作,只不过感兴趣的事件是写入完成事件。

从上面可以看出,Reactor和Proactor模式的主要区别就是真正的读取和写入操作是有谁来完成的,Reactor中需要应用程序自己读取或者写入数据,而Proactor模式中,应用程序不需要进行实际的读写过程,它只需要从缓存区读取或者写入即可,操作系统会读取缓存区或者写入缓存区到真正的IO设备.


          综上所述,同步和异步是相对于应用和内核的交互方式而言的,同步 需要主动去询问,而异步的时候内核在IO事件发生的时候通知应用程序,而阻塞和非阻塞仅仅是系统在调用系统调用的时候函数的实现方式而已。


    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3