V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  ysmood  ›  全部回复第 14 页 / 共 15 页
回复总数  297
1 ... 6  7  8  9  10  11  12  13  14  15  
2015-05-17 23:16:56 +08:00
回复了 ysmood 创建的主题 分享创造 由于 Bluebird 体积太大,重造了一个 Promise 库
@laoyur 所以这里为了问题的简化,只讨论 ES6,unhandled reject 这个我口误,是要符合现行 chrome 或者 firefox的处理方式,他们会在 gc 里处理它,我这边尽量模拟了这个过程,这很关键。

关于性能,我帮你跑了下,在 node 下差距很大:

Node v1.8.1
OS darwin
Arch x64
CPU Intel(R) Core(TM) i7-4850HQ CPU @ 2.30GHz
--------------------------------------------------------------------------------
yaku
total: 324ms
init: 215ms
resolution: 109ms
memory: rss - 115mb | heapTotal - 96mb | heapUsed - 76mb

pp
total: 2378ms
init: 1940ms
resolution: 438ms
memory: rss - 300mb | heapTotal - 278mb | heapUsed - 252mb

浏览器里没必要测性能,只有服务端 server 用 yaku 的时候这才是瓶颈,用户的 browser 里不可能跑重运算的。
2015-05-17 22:24:55 +08:00
回复了 ysmood 创建的主题 分享创造 由于 Bluebird 体积太大,重造了一个 Promise 库
@otakustay 另外你理解的 unhandled reject 似乎不对。比如我用你的库运行

Promise.reject(10).catch(function() {})

结果还是会打印 10,这不符合 ES6 spec 的规范。
2015-05-17 22:11:13 +08:00
回复了 ysmood 创建的主题 分享创造 由于 Bluebird 体积太大,重造了一个 Promise 库
@otakustay 我这边除了 unhandled rejection,还有 long stack trace,这个也非常重要。另外你可以测下你的性能和我的差别。

我的这个库的目的就是不添加除了调试用的任何非原生接口,换句话说用我这个库,可以没有任何副作用的删除它,切换到使用原生的 Promise。

关于 cancel/abort 这个不是 Promise 应该解决的问题,ES6 的 community 已经应该讨论过这个问题了。
2015-05-17 19:59:04 +08:00
回复了 ysmood 创建的主题 分享创造 由于 Bluebird 体积太大,重造了一个 Promise 库
@laoyur readme 里已经有个和各个库的性能比较了,看那个表格,其中有 Bluebird,你甚至能自己跑下 benchmark,具体怎么运行 readme 里也有。不过更复杂情况的性能测试不是当前的开发重点,性能会之后慢慢优化。
2015-05-17 19:40:25 +08:00
回复了 ysmood 创建的主题 分享创造 由于 Bluebird 体积太大,重造了一个 Promise 库
@magicdawn 我这个跟书上的不一样,一般书上的实现是跑不过那 800 多个单测的,我这个 80 行的是可以的,我这个可能更偏向工程实际些。对于想更深入了解的人可能有帮助。
2015-04-12 18:41:30 +08:00
回复了 abccba 创建的主题 Linux 坚持使用 Linux 办公的朋友们可否分享一些经验?
@abccba 联系我吧,反正是马甲,无所谓 waistcoat01#gmail.com
2015-04-09 11:21:04 +08:00
回复了 ysmood 创建的主题 程序员 没有人觉得 golang 官方的项目文件命名规范很奇怪吗?
@ewex 比如 whydoyouthinkitiselegant?
2015-04-08 17:09:45 +08:00
回复了 ysmood 创建的主题 程序员 没有人觉得 golang 官方的项目文件命名规范很奇怪吗?
stringutil 这个不就两个单词么?should be single-word 这不自相矛盾吗?
2015-04-08 17:08:35 +08:00
回复了 ysmood 创建的主题 程序员 没有人觉得 golang 官方的项目文件命名规范很奇怪吗?
@aaaa007cn `stringutil` 我笔误。别纠结后缀。关键是文件命名方式。
2015-03-20 01:43:30 +08:00
回复了 pingplusplus 创建的主题 推广 iPhone 只有一个按钮的灵感来自马桶,你知道吗?
那为啥,不把锁屏键,静音键和音量键也去掉?太不极致了。
@binux 所以我说参考价值相对高低。我只能说这种反例相对比较少,肯定不能完美判定好坏的。引用数这个概念应该是公认比较靠谱的吧?star 数这种社交型的会更容易被非技术因素影响吧?我指的自动判定,自己人工判定肯定会更准。

话说 python 没什么好的实时引用计数统计服务吗?
github 参考意义确实不会太大,但是如果有人说他开发的某个项目我正在使用,那就比较有说服力了。至少我用过,知道这东西的好坏。

像 npm 里项目被引用次数比 github 要更具参考价值(类似论文引用次数)。比如你跟别人说你的项目被1000个项目引用了,这就比较能体现某个作品的价值了。当然很多产品级别的东西作为末端很难被作为库引用就是了。

@binux 话说 pip 有引用次数计数吗?类似 https://www.npmjs.org
2015-03-04 00:17:25 +08:00
回复了 nary 创建的主题 问与答 如何通过掷六面骰子,产生 1-7 的随机数?
其实我好奇的是能否在既定的次数内完成这个需求,按现在的解法,运气不好可能要重投无数次。
2015-03-04 00:02:49 +08:00
回复了 nary 创建的主题 问与答 如何通过掷六面骰子,产生 1-7 的随机数?
@Daniel65536 嗯,确实,没仔细想,感觉高中天天犯这种错误。
2015-03-03 23:41:14 +08:00
回复了 nary 创建的主题 问与答 如何通过掷六面骰子,产生 1-7 的随机数?
我给个可能不是最优,但易于理解的解吧:

1、记 N 初始值为 0
2、扔骰子,如果是奇数 N++
3、重复步骤 2,7 次

总共操作 7 次,得到的 N 值就是 [1, 7] 均匀分布的。
2015-03-03 23:12:28 +08:00
回复了 nary 创建的主题 问与答 如何通过掷六面骰子,产生 1-7 的随机数?
这题改下,求最少需要扔多少次,能达到均匀随机。
2015-02-28 14:23:14 +08:00
回复了 tioover 创建的主题 程序员 两篇 Rust 安利文
感觉现在很多人倾向于使用 nim,和 nim 比比呢?
2015-02-06 16:54:47 +08:00
回复了 hustKiwi 创建的主题 酷工作 [百度音乐] 前端实习生@北京
@liubiantao 作为强迫症患者,你说完一句话怎么没句号之类的结尾呢?
2015-01-12 18:17:23 +08:00
回复了 ysmood 创建的主题 程序员 如何脱离 grep, sed, awk 完成一些批量任务?
@rail4you 嗯,有道理,标题确实应该换一下。可惜 v2ex 不能像 stackoverflow 或 quora 那样随时更换标题,发布五分钟之后就 lock 了。
2015-01-12 01:15:46 +08:00
回复了 ysmood 创建的主题 程序员 如何脱离 grep, sed, awk 完成一些批量任务?
@caizixian 这是是原创,请看第 4 条回复。
1 ... 6  7  8  9  10  11  12  13  14  15  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5095 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 24ms · UTC 09:45 · PVG 17:45 · LAX 01:45 · JFK 04:45
Developed with CodeLauncher
♥ Do have faith in what you're doing.