上一页 1 ··· 39 40 41 42 43 44 45 46 47 ··· 103 下一页
摘要: actor是一个无线程区别的内存访问对象;actor背后有线程支持;actor的事件处理依赖与这个线程(队列、池)。 actor是一种面向对象的线程(池)模型,强调对事件的响应;在iOS中相当于一种通信简化的runloop模型; 对比:数据结构化的线程模型,侧重于强调线程拥有的资源(栈、优先级、状态 阅读全文
posted @ 2019-03-06 12:58 zzfx 阅读(896) 评论(0) 推荐(0)
摘要: 竞争与合作 没有先后依赖关系的为竞争 有先后依赖关系的为合作 阅读全文
posted @ 2019-03-06 12:47 zzfx 阅读(142) 评论(0) 推荐(0)
摘要: 1、根据await调用链寻找最终的生产者或服务提供者; 2、请求服务; 3、进行执行环境切换,跳出顶层函数(第一个无await修饰的函数),执行后面的语句; 4、服务完成,将服务数据复制给最底层的await函数的返回值; 5、进行上下文切换,执行await后面的语句; 6、从1开始新的循环。 调用a 阅读全文
posted @ 2019-03-05 21:45 zzfx 阅读(317) 评论(0) 推荐(0)
摘要: 协程就是一种用户态内的上下文切换技术 我对协程的定义是:协程是在一个线程执行过程中可以在一个子程序的预定或者随机位置中断,然后转而执行别的子程序,在适当的时候再返回来接着执行。他本身是一种特殊的子程序或者称作函数。 区别:楼上很好很精辟。 应用:协程基于generator,Python3中内置了异步 阅读全文
posted @ 2019-03-05 19:48 zzfx 阅读(492) 评论(0) 推荐(0)
摘要: 缘起 libco 协程库在单个线程中实现了多个协程的创建和切换。按照我们通常的编程思路,单个线程中的程序执行流程通常是顺序的,调用函数同样也是 “调用——返回”,每次都是从函数的入口处开始执行。而libco 中的协程却实现了函数执行到一半时,切出此协程,之后可以回到函数切出的位置继续执行,即函数的执 阅读全文
posted @ 2019-03-05 19:45 zzfx 阅读(850) 评论(0) 推荐(0)
摘要: 阿里妹导读:刚刚,阿里巴巴正式对外开源了基于 Apache 2.0 协议的协程开发框架 coobjc,开发者们可以在 Github 上自主下载。coobjc是为iOS平台打造的开源协程开发框架,支持Objective-C和Swift,同时提供了cokit库为Foundation和UIKit中的部分A 阅读全文
posted @ 2019-03-05 18:32 zzfx 阅读(1080) 评论(0) 推荐(0)
摘要: 1、在用户空间中实现线程 (1)特点:把整个线程包放在用户空间,内核对线程包一无所知。从内核角度考虑,就是按正常的方式管理,即单线程进程(存在运行时系统) (2)优点: 1、用户级线程包可以在不支持线程的操作系统上实现。 2、线程切换至少要比陷入内核要快一个数量级。在线程完成运行时,它调用threa 阅读全文
posted @ 2019-03-05 17:35 zzfx 阅读(316) 评论(0) 推荐(0)
摘要: 一、构建流程 1、(异步)数据源(请求)的构建:Promise的构建并执行请求; 2、处理流程的构建:then将处理函数保存; 二、处理: 1、请求的响应返回; 2、调用后继处理流程。 三、 1、构建源promise的同时发起了异步请求; 2、构建后继处理流程是在一瞬间完成的; 声明式编程语言: 处 阅读全文
posted @ 2019-03-05 16:46 zzfx 阅读(298) 评论(0) 推荐(0)
摘要: 函数式编程与异步编程 函数式编程中,异步编程是惰性计算的根源,惰性计算是函数式异步编程的支持; 1、高阶函数都具有计算构建的功能; 2、函数式编程语言对异步编程的支持是通过惰性求值机制实现的; 3、惰性计算的变量在语言或机制的底层需要保存;在接口层面,通常是作为高阶函数的参量,需要特定的修饰符修饰; 阅读全文
posted @ 2019-03-05 16:33 zzfx 阅读(965) 评论(0) 推荐(0)
摘要: 这篇文章不是针对当前版本 Swift 3 的,而是对预计于 2018 年发布的 Swift 5 的一些特性的猜想。如果两年后我还记得这篇文章,可能会回来更新一波。在此之前,请当作一篇对现代语言并行编程特性的不太严谨科普文来看待。 2016-12-20 • 能工巧匠集 CPU 速度已经很多年没有大的突 阅读全文
posted @ 2019-03-05 15:09 zzfx 阅读(270) 评论(0) 推荐(0)
摘要: 异步编程的本质:后继处理流程的保存 阅读全文
posted @ 2019-03-05 14:56 zzfx 阅读(260) 评论(0) 推荐(0)
摘要: Some Objective-C APIs—like target-action—accept method or property names as parameters, then use those names to dynamically call or access the methods 阅读全文
posted @ 2019-03-04 18:38 zzfx 阅读(1187) 评论(0) 推荐(0)
摘要: scalaz功能基本上由以下三部分组成: 1、新的数据类型,如:Validation, NonEmptyList ... 2、标准scala类型的延伸类型,如:OptionOps, ListOps ... 3、通过typeclass的随意多态(ad-hoc polymorphism)编程模式实现的大 阅读全文
posted @ 2019-03-01 19:47 zzfx 阅读(297) 评论(0) 推荐(0)
摘要: 复用的基础是组件化与标准化。 插座与插头;发动机的可替换部件。 阅读全文
posted @ 2019-03-01 19:33 zzfx 阅读(575) 评论(0) 推荐(0)
摘要: Overview 本章主要介绍高级条件语句中的 switch 语句以及其增强版的模式匹配。 Java 篇 Switch 特点 Java 中 switch 语句功能类似 if,但是 switch 主要用在多条件分支上。 switch 语句由 case 分支和 default 组成,case 分支用于检 阅读全文
posted @ 2019-03-01 18:11 zzfx 阅读(601) 评论(0) 推荐(0)
摘要: 函数式编程的类型系统:typeclass Typeclass是带有关联构造类型的抽象接口,抽象接口的行为用于约束构造类型。 构造类型实现了抽象接口的行为约束,就称这个实现为这个构造类型的函子。 要素:1、关联的构造类型;2、建立在这个构造类型上的的约束。 3、构造类型的关联类型的概念与行为,及与构造 阅读全文
posted @ 2019-03-01 17:23 zzfx 阅读(705) 评论(0) 推荐(0)
摘要: 类型构造是抽象类型或高阶类型实例化的过程; 类型构造器是任意输入一个或几个已有类型,能够生成新类型的类型; https://www.cnblogs.com/feng9exe/p/9925027.html Type constructors Essentially what HKT gives us 阅读全文
posted @ 2019-03-01 15:35 zzfx 阅读(253) 评论(0) 推荐(0)
摘要: 函数的类型:函数也是类型 (*)->* 函数类型作为类型可以定义变量,使得函数变量具有可替代性,这个是高阶函数的编程基础。 使用函数的类型可以定义函数的变量,并用函数给这个变量赋值; 每一个函数的实现都是一个函数类型的具体实现。 类型系统分为两类: 1、函数类型; 2、变量类型; 阅读全文
posted @ 2019-02-28 23:03 zzfx 阅读(198) 评论(0) 推荐(0)
摘要: 我站在屋顶之上,发现这个屋子千苍百孔。 我站在屋檐之下,发现屋子里装的东西密密麻麻; 阅读全文
posted @ 2019-02-27 17:32 zzfx 阅读(238) 评论(0) 推荐(0)
摘要: swift的枚举模式是数据结构与操作结合的模式 1、enum本质是一个类型,可以定义变量; 它定义的变量可以用到其它变量用的的任何地方:函数的输入、输出、成员变量、临时变量等; 这个变量还可以带有附加信息:rawValue、关联值等; 枚举变量是一个变量,枚举变量是一个可以携带更多信息的变量; 2、 阅读全文
posted @ 2019-02-27 17:26 zzfx 阅读(433) 评论(0) 推荐(0)
上一页 1 ··· 39 40 41 42 43 44 45 46 47 ··· 103 下一页