自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 资源 (7)
  • 收藏
  • 关注

原创 iOS开发—解析天气预报

新建一个SingleViewApplication应用,命名为04-JSON解析,在ViewController. m文件中,定义一个加载数据的方法,用于解析天气预报的数据,代码如下:#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void

2017-11-16 18:03:54 1213 1

原创 iOS开发—配置Apache服务器

为了能够有一个免费测试的服务器,需要配置一个web服务器。Apache是使用最广的web服务器,它是Mac自带的服务器,只要修改几个配置就可以使用,相对而言比较简单快捷,针对一些特殊的服务器功能,Apache都能够有很好的支持。要想配置Apache,准备工作是要设置用户密码,避免计算机“裸奔”到互联网。打开Finder中的“系统偏好设置”,单击“用户与群组”,切换到当前的用户后,单击“更改密码

2017-11-15 20:47:53 714

原创 iOS开发—线程的模拟暂停和继续操作

表示图开启线程下载远程的网络界面,滚动页面时势必会有影响,降低用户的体验。针对这种情况,当用户滚动屏幕的时候,暂停队列;用户停止滚动的时候,继续恢复队列。接下来通过一个案例,演示如何暂停和继续操作,具体内容如下:(1)新建一个SingleViewApplication工程,命名为“13-SuspendAndContinue”;(2)进入Main.StoryBoard,从对象库中拖拽3个Bu

2017-11-11 20:16:00 3244

原创 iOS开发—对NSOperation操作设置依赖关系

一个队列中执行任务的先后顺序的不一样的,如果队列的操作是并发执行的,则会创建多个线程,每个操作的优先级更是不固定的。通过任务间添加依赖,可以为任务设置执行的先后顺序。接下来通过一个案例来展示设置依赖的效果。新建一个SingleViewApplication工程,命名为“12-NSOperationAddDependency”。进入ViewController.m文件,通过一个模拟演示,展示如何

2017-11-11 19:51:49 3028

原创 iOS开发—自定义NSOperation子类下载图片

如果NSOperation的两个子类,NSInvocationOperation类和NSBlockOperation类无法满足需求,可以自定义一个继承自NSOperation的类。接下来通过一个下载图片的案例,展示如何使用自定义的NSOperation子类,这里暂时先介绍非并发的NSOperation,具体内容如下:(1)新建一个SingleViewApplication工程,命名为“11-C

2017-11-11 16:43:11 470

原创 iOS开发—使用NSOperation子类操作

因为NSOperation本身是抽象基类,表示一个独立的计算单元,因此如果要创建对象的话,必须使用它的子类。Foundation框架提供了两个具体子类直接供开发者使用,它们就是NSInvocationOperation和NSBlockOperation类。除此之外,还可以自定义子类,只要继承于NSOperation类,实现内部相应的方法即可。下面介绍这三种情况:1、NSInvocationOp

2017-11-11 11:44:38 603

原创 iOS开发—使用GCD实现多线程开发—调度队列组

假设有一个音乐应用,如果要执行多个下载歌曲的任务,这些耗时的任务会被放到多个线程上异步执行,指导全部的歌曲下载完成,弹出一个提示框来通知用户歌曲已下载完成。针对这个应用场景,可以考虑使用队列组。一个队列组可以将多个block组成一组,用于监听这一组任务是否全部完成,指导关联的任务全部完成后再发出通知以执行其他的操作。iOS提供了如下的函数开始用队列组。(1)创建队列组要想使用队列组,首

2017-11-10 22:57:34 934

原创 iOS开发—使用GCD实现多线程(单次或重复执行任务)

在使用GCD时,如果想让某些操作只使用一次,而不重复操作的话,可以使用dispatch_once()函数来实现。dispatch_once()函数可以控制提交的代码在整个应用的生命周期内最多执行一次,而且该函数无需传入队列,这就意味着系统将直接使用主线程执行该函数提交的代码块。dispatch_once()函数的定义格式如下所示:void dispatch_once(dispatch_once_t

2017-11-10 21:22:36 6182

原创 iOS开发—使用GCD下载图片

通过一个下载网络图片的案例,展示使用GCD来完成多线程的管理,当图片下载完成后,将图片显示到主线程更新UI,具体步骤如下:1、新建一个Single View Application 应用,名称为06-GCDDownload;2、进入Main.StoryBoard,从对象库拖拽一个ImageView到程序界面,用于放置下载后的图片,给Image View设置一个背景颜色,设计好的界面

2017-11-10 01:03:16 1844

原创 iOS开发—使用GCD实现多线程

GCD是苹果公司为多核的并行运算提出的解决方案,工作时会自动利用更多的处理器核心。使用GCD,系统会完全管理线程,开发者无需编写线程代码。GCD是Grand Central Dispatch 的缩写,它是基于C语言的。GCD会负责创建线程和调度学要执行的任务,由系统直接提供线程管理。GCD有两个核心概念:队列和任务。1、队列Dispatch Queue(队列),它是一个用来存放任务的集

2017-11-09 11:09:54 363

原创 iOS开发—线程间的通信

在一个进程中,线程往往不是孤立存在的,多个线程之间要经常进行通信,成为线程间的通信。线程间的通信主要体现在,一个线程执行完特定任务后,转到另一个线程去执行任务,在转换任务的同时,将数据也传递给另外一个线程。NSThread类提供了两个比较常用的方法,用于实现线程间的通信,这两个方法的定义格式如下:-(void)performSelectorOnMainThread:(SEL)aSelect

2017-11-08 17:49:02 3043

原创 iOS开发—线程之间资源共享(以卖火车票为例)—同步锁的使用

进程中的一块资源可能会被多个线程共享,也就是多个线程kennel会访问同一块资源,这里的资源包括对象、变量、文件等。当多个线程同时访问同一块资源时,会造成资源抢夺,很容易引发数据错乱和数据安全问题。为了更好的理解线程安全的问题,引入一个卖票的案例,同时设置3个窗口卖票,模拟为每一个窗口开启一个线程,共同访问票数资源。新建一个Single View Application应用,名称为02-Thr

2017-11-07 10:04:44 1530

原创 算法题—n位正整数去掉k(k<=n)位数字得到最小数

问题描述:给定n位正整数a,去掉其中任意k对于给定的正整数a,编程计算删去k个数字后得到的最小数。输入:多组测试数据,每组测试数据的第一行是1个正整数a(a,第二行是正整数k(k输出:删掉个数字后的最小数,每组测试数据输出单独一行,如果首位数字为0,删除首位数字。#include #define MAX 10000000int num[MAX];//返回删除的位置int

2017-11-06 21:45:43 7150

原创 iOS开发—使用NSThread实现多线程

NSThread类是实现多线程的一种方案,也是实现多线程最简单的方式。1、线程的创建和启动在iOS开发中,通过创建一个NSThread类的实例作为一个线程,一个线程就是一个NSThread对象。要想使用NSThread类创建线程,有3种方法,具体如下所示:在上述代码中,这三种方法都是将target对象或者其所在对象的selector方法转化为线程的执行者。其中selector方法最多可

2017-11-06 13:53:12 320

原创 Matlab画三维立体网状图形(类似魔方)

第一次用Matlab画这种三维立体的图形,搞了半天发现这个样例图片真的是个坑!发现选择Matlab画这种图真的是大材小用了。样例图片:Matlab中有很多绘制三维立体图形的函数,搜了很多资料之后发现,slice函数比较适合画这种网状图,上代码:[x,y,z]=meshgrid(0:1:4,0:1:5,0:1:4);v=x.*y; %三维立体图形xs=[0,1,2,3,4];y

2017-11-05 01:36:04 9632 5

CUDA8.0_cudnn.zip

NVIDIA cuDNN是用于深度神经网络的GPU加速库。它强调性能、易用性和低内存开销。NVIDIA cuDNN可以集成到更高级别的机器学习框架中,如谷歌的Tensorflow、加州大学伯克利分校的流行caffe软件。简单的插入式设计可以让开发人员专注于设计和实现神经网络模型,而不是简单调整性能,同时还可以在GPU上实现高性能现代并行计算。Windows7系统可用的CUDA8.0,CUDA(Compute Unified Device Architecture),是显卡厂商NVIDIA推出的运算平台。 CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。

2019-06-26

VS_debug_dll.zip

VS调试过程中报错“无法启动此程序,因为计算机中丢失xxx.dll。尝试重新安装该程序以解决此问题。” 此压缩文件中提供了缺少的pthreadVC2.dll、curand64_80.dll、cublas64_80.dll、cudart64_80.dll等文件。

2019-06-26

MySQL-python-1.2.3.tar.gz

MySQL-python-1.2.3.tar.gz,MySQL是Web世界中使用最广泛的数据库服务器。SQLite的特点是轻量级、可嵌入,但不能承受高并发访问,适合桌面和移动应用。而MySQL是为服务器端设计的数据库,能承受高并发访问,同时占用的内存也远远大于SQLite。

2018-06-28

hadoop-eclipse-plugin-2.9.0.jar

hadoop-eclipse-plugin-2.9.0.jar是用java调用Hadoop的必备插件。

2018-06-28

mysql-connector-java-5.1.46和mysql-connector-java-5.1.43

mysql-connector-java 是MySQL的JDBC驱动包,用JDBC连接MySQL数据库时必须使用该jar包。

2018-06-28

下载工具wget-1.10.2+yum-3.2.3+yum-3.4.3

wget 是一个从网络上自动下载文件的自由工具,支持通过 HTTP、HTTPS、FTP 三个最常见的 TCP/IP协议 下载,并可以使用 HTTP 代理。Yum是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

2018-06-28

zookeeper3.4.12+hbase1.4.4+sqoop1.4.7+kafka2.10

Hadoop集群搭建必备安装包,包括zookeeper3.4.12+hbase1.4.4+sqoop1.4.7bin_hadoop-2.6.0+kafka2.10亲测可用。

2018-06-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除