Hello World
Spiga

分类:并行处理

为什么我认为goroutine和channel是把别的平台上类库的功能内置在语言里

2013-04-09 13:52 by 老赵, 12504 visits
摘要:这几天看了《Go语言编程》这本书,感觉一般,具体可见发表在图灵社区里的书评。书评里面我提到“Go语言的goroutine和channel其实是把别的语言/平台上类库的功能内置到语言里”,这句话当然单单这么说出来是没什么价值的,于是我也就趁热把它说得再详细一些。我的看法简而言之是:由goroutine和channel所带来的主要编程范式、设计思路等等,其实基本都可以在其他一些平台中配合特定的类库来实现。 阅读全文

讨论:一则并行聚合计算方案的设计

2012-09-05 23:31 by 老赵, 6912 visits
摘要:最近的工作让我想到了一个对集合的元素进行并行聚合的案例,尽管这个需求还不存在,但最近却一直在我的脑海里挥之不去,尚未得出令人满意的结果。今天下班前我将这个问题辛苦地缩减为140字内的描述发到了微博上,得到了许多同学的回复,但可能是由于描述过于简单,得到的建议似乎都不能满足我的需求。于是在此我通过博客详细描述下这个问题的需求,还有我之前做过的尝试,这样讨论起来也可以更加有针对性一些。 阅读全文

基于Jscex.Async的JavaScript动画/游戏

2010-12-16 01:03 by 老赵, 4538 visits
摘要:首先和大家宣布一个消息,Jscex的代码已经提交至Github上了,感兴趣的朋友下载来Dog Fooding一把,并欢迎提出反馈意见。Jscex受到F#计算表达式的启发,是一个面向JavaScript语言的monadic扩展,最常见的用途便是编写异步程序,尤其是逻辑复杂的异步程序。不过除此之外,使用这套异步库来编写动画或是游戏也是十分容易的事情。例如,一个人物的走动或是爆炸效果,其实可以视为一个贴图随时间不断变化的过程。这个变化的过程是异步的,但是有了Jscex.Async,我们只需使用最直接的同步形式编写代码就行了。 阅读全文

演出季上“异步编程模型的演变”幻灯片

2010-12-11 22:01 by 老赵, 4487 visits
摘要:演出季终于过去了,现在就来做一个收尾吧。这次的主题是“异步编程模型的演变”,主要回顾了微软在.NET平台上异步编程上的进化:基于回调,基于迭代生成器,基于类库,基于语言。不过这样的编程模型其实并非微软独有,而是一些运用比较广泛的异步编程方式,因此在SD 2.0大会上我其实完全用JavaScript进行演示。从结果上来看,除了最早的TUP,其他两场演讲(.NET技术大会和SD 2.0)的反响都不错。 阅读全文

适合JavaScript 1.7中迭代生成器的异步编程机制

2010-12-03 19:09 by 老赵, 3470 visits
摘要:上篇文章我提出了一种基于JavaScript 1.7中迭代生成器(yield)的异步编程方式,它可以让混乱的异步代码逻辑变得清晰一些。不过之前的AsyncIterator其实是对基于C# 2.0的AsyncEnumerator的仿制品,在公司的分享会上进行交流以后,同事hax提出其实可以实现地更漂亮一些。在他的提示下,我了解到JavaScript 1.7中不同于C# 2.0里的特性,因而对这种异步编程机制提出了改进。只可惜yield特性被ECMAScript 5排除了,这实在可以说是委员会设计模式的又一次伟大胜利。 阅读全文

JavaScript版本的AsyncEnumerator

2010-11-29 22:25 by 老赵, 4263 visits
摘要:地球人都知道,在C# 2.0里提供了yield关键字,可以方便好用地生成一个迭代器,更可以简化异步操作——这是因为有了Jeffrey Richter开发的AsyncEnumerator。在接下来的某些演讲中我准备的主题是“异步编程模型”的演变,自然少不了这非常重要的一环。为了便于广大人民群众更好地接受,我决定使用JavaScript来进行说明。为此,我用JavaScript实现了一个AsyncEnumerator。 阅读全文

关于即将到来的“演出季”以及Jscex类库

2010-11-22 20:30 by 老赵, 3942 visits
摘要:又到了一年一度的“演出季”,接下来将是各式会议扑面而来的一个月。作为“与会爱好者”我自然也进入了繁忙的准备工作。接下来我将在TUP(11月27日)、2010年第二届.NET技术大会(12月4~5日)以及CSDN软件开发2.0大会(12月9~10日)上与大家分享四场演讲。不过除了一场是关于Windows并发编程的基础以外,其余三场的话题都是围绕“微软在异步编程方面的演变”。在这场演讲中,我还会引入一个与该话题密切相关的JavaScript类库:Jscex。 阅读全文

盛大创新院赞助第二届.NET技术交流会 - 演讲录像及下载

2010-09-21 11:27 by 老赵, 4851 visits
摘要:经过一个多星期的努力,我们在此为大家奉上盛大创新院赞助第二届.NET技术交流会的演讲录像。由于录像过程中的一些失误,我们在在讲师录像方面存在着很大问题,经过补救,也只能得到后两场演讲中使用手持设备拍摄下来的录像。在此向大家表示深深的歉意,有了这次的教训,我们以后会更加重视每一个环节的预防及补救措施,尽力避免如现在这样无可挽回的结果。 阅读全文

盛大创新院赞助第二届.NET技术交流会 - 各场演讲幻灯片

2010-09-12 22:32 by 老赵, 3408 visits
摘要:昨天有160多位朋友参加了盛大创新院赞助的第二届.NET技术交流会,再次感谢各位对我们的支持。比较遗憾的是,这次的讲师录像方面有着很大问题,我们正在想办法进行修补,希望可以有“差强人意”的结果。现在,大家请在第一时间浏览本次活动新鲜出炉的幻灯片。 阅读全文

盛大创新院赞助第二届.NET技术交流会即将召开

2010-09-09 11:14 by 老赵, 2131 visits
摘要:由盛大创新院赞助的第二届.NET技术大会将于9月11号下午1点召开,本次交流会请到了四位讲师,议题覆盖了响应式编程、算法、面向对象设计及Windows内核等多个方面,其中最为突出的莫过于由潘爱民老师为大家带来的Windows内核方面的话题。我已经看过了各场演讲的幻灯片终稿,也很期待各位讲师在正式演讲中的表现。 阅读全文

盛大创新院赞助第二届.NET技术交流会开始报名了!

2010-08-16 11:02 by 老赵, 3581 visits
摘要:自上次盛大创新院赞助的首届.NET技术交流会到现在已经有两个月,这意味着按照原来的“一季一次”的计划也已经离第二次的活动不远了,考虑到9月份的中秋和国庆假期将工作日和休息日搞的支离破碎,于是交流会的时间会略微有些提前。第二届交流会的形式与上次相同,将为您献上四场高质量的技术演讲。当然这次在内容上有了新的尝试,除了引入了算法及面向对象设计的内容之外,这次更是请到了“传说中的大侠”为大家带来有关Windows内核的深度内容。人数暂定为200人,事不宜迟,赶快报名吧。除了.NET社区的群众以外,也欢迎其他技术社区的朋友前来参与交流。事实上,我组织技术交流会的目的之一便是希望能够促进.NET社区与其他技术社区的交流及相互学习。 阅读全文

盛大创新院赞助首届.NET技术交流会 - 演讲录像及下载

2010-06-24 14:40 by 老赵, 7578 visits
摘要:经过几天的努力,终于将盛大创新院赞助的首届.NET技术交流会的演讲录像制作完成了。本来在现在的高清视频以外,我还想像Channel 9一样提供一些低码率的格式下载,但多次尝试都以失败告终,各中滋味难以言喻。因此目前只能给大家提供mov格式的高清视频下载,对于Windows下各类强大的播放器都不成问题。您也可以在线观看这些视频,不过上传至优酷后,发现除了清晰度较低外,甚至还有音画不同步的问题。我正在联系酷六网,会尽快用上质量更好的视频。 阅读全文

盛大创新院赞助首届.NET技术交流会 - 各场演讲幻灯片

2010-06-19 23:48 by 老赵, 4873 visits
摘要:今天是近期最热的一天,气温高达35度,异常闷热,但是依然有160多位朋友冒着酷暑参加了盛大创新院赞助的首届.NET技术交流会,这让我感到很欣慰,因此这里首先要感谢大家的支持。我刚才浏览了一下三场演讲的桌面录像,可谓异常完美,现在只等酷六网的摄影师的讲师录像到手,便可以合成为最终的演讲视频了,希望能够尽快展示给大家。不过现在,大家可以在第一时间浏览本次活动新鲜出炉的幻灯片。 阅读全文

盛大创新院赞助首届.NET技术交流会即将召开

2010-06-17 11:45 by 老赵, 2328 visits
摘要:由盛大创新院赞助的首届.NET技术大会将于6月19号下午1点召开,本次交流会请到了四位讲师,议题覆盖了F#、C#、Rails及架构等多个方面。我已经看过了各场演讲的幻灯片草稿,也很期待各位讲师在正式演讲中的表现。本次大会中,我们还获得了人民邮电出版社图灵教育赠送的20册图书,将会作为奖品赠送给在交流会中表现积极的听众。此外,我们还请到了酷六网的专业摄影师对演讲过程进行全程拍摄,并配合各位讲师自身的屏幕录像,将在后期合成为适合独立观看的演讲视频,让不能到场的朋友在线或是下载后观看。 阅读全文

盛大创新院赞助首届.NET技术交流会开始报名了!

2010-05-13 14:30 by 老赵, 5255 visits
摘要:自从上次在博客中提到盛大创新院赞助.NET技术会议已经过去了一个半月,如今这件事情终于落实了。我为此准备了数千字的申请书,但老大看也不看便表示支持。他的说法是,只要办得热烈,有影响力,那么这样的活动绝对支持。为此,各场次演讲内容及会场等诸多事宜之后,现在“首届.NET技术交流会”正式进入报名阶段了。人数不设上限,多多益善,怕只怕会场会显得空旷。除了.NET社区的群众以外,也欢迎其他技术社区的朋友前来参与交流。事实上,我组织技术交流会的目的之一便是希望能够促进.NET社区与其他技术社区的交流及相互学习。 阅读全文

F#中的异步及并行模式(3 - 下):代理的进一步使用

2010-03-21 18:19 by 老赵, 3967 visits
摘要:之前的文章中我们了解了F#中并行及交互式程序的编程方式。在本系列的第3部分中,我们会来探索F#中轻量级的,交互式的代理,以及与代理有关的一些模式,包括隔离的内部状态。(译注:由于原文内容较多,译文拆成两段进行。在上半段文章中讨论了代理的基本使用方式,而下半段则讨论关于代理使用中更进一步的模式。) 阅读全文

F#中的异步及并行模式(3 - 上):代理的基本使用

2010-03-15 01:35 by 老赵, 5345 visits
摘要:之前的文章中我们了解了F#中并行及交互式程序的编程方式。在本系列的第3部分中,我们会来探索F#中轻量级的,交互式的代理,以及与代理有关的一些模式,包括“隔离的内部状态”。(译注:由于原文较长,因此译文分为两段,目前是第一段,讲解了F#中异步代理的基本使用方式。) 阅读全文

F#中的异步及并行模式(2):反馈进度的事件(包含Twitter示例)

2010-03-08 00:33 by 老赵, 6367 visits
摘要:上一篇文章中谈到,“异步CPU并行”与“异步I/O并行”两个模式的限制之一便是无法通知组合操作的进度或结果。在这篇文章中,我们讲关注一个常见的异步模式:反馈进度的事件(Reporting Progress with Events),这是一种用于强大而优雅的做法,用于在某个边界之后对并行的执行过程加以封装,并同时汇报执行的结果或是进度。在文章最后,我们会使用这个设计模式开发一个示例,从Twitter中获取一系列记录。 阅读全文

F#中的异步及并行模式(1):并行CPU及I/O计算

2010-03-03 23:37 by 老赵, 8450 visits
摘要:F#是一门并行(parallel)及响应式(reactive)语言。这个说法意味着一个F#程序可以存在多个进行中的运算(如使用.NET线程进行F#计算),或是多个等待中的回应(如等待事件或消息的回调函数及代理对象)。 F#的异步表达式是简化异步及响应式程序编写的方式之一。在这篇及今后的文章中,我会探讨一些使用F#进行异步编程的基本方式──大致说来,它们都是F#异步编程时使用的模式。我们从两个简单的设计模式开始:CPU异步并行(Parallel CPU Asyncs)和I/O异步并行(Paralle I/O Asyncs)。 阅读全文

视频:Microsoft PDC 09,算法及数据结构内容及其他

2009-11-27 13:57 by 老赵, 6511 visits
摘要:这里又有一些新整理好的视频。Microsoft PDC 09是最近的重头,只要您是搞微软技术的,无论关注哪个技术方面,都可以找到许多有用的内容。我也经常从此类大会中了解许多平时不太关注的内容,也算是保持知识的新鲜度。此外,还有算法和数据结构相关的内容,以及有趣的Visual Studio纪录片。 阅读全文
1 2 Next >
使用Live Messenger联系我