V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
V2EX  ›  fds  ›  全部回复第 34 页 / 共 55 页
回复总数  1085
1 ... 30  31  32  33  34  35  36  37  38  39 ... 55  
❮ ❯
2017 年 12 月 18 日
回复了 sangmingming 创建的主题 › Android › 小米感恩节不感恩
还好啦。我 9 月买 note3 时还 2899,现在已经 2599+299 元 AI 音箱+100 元话费米粉卡……
2017 年 12 月 18 日
回复了 zachguo 创建的主题 › Android › 多年苹果用户换用安卓的感受
国外有谷歌生态的话安卓挺好
2017 年 12 月 13 日
回复了 threedream 创建的主题 › 程序员 › 关于 MongoDB aggregate 和 mapReduce 的统计问题
同意楼上说的,把统计结果存起来,下次查就快了。
另外反正就是遍历,直接写个程序 find 区间然后调用 cursor.next()遍历所有条目,自己排重即可。

你说的代码里 date:{$add:[new Date(0),parseInt("$timestamp")]} 这段肯定有问题,parseInt 是个函数,你这么调用就是个字符串,不可能用数据库里的值代替的。改成 date:{$add:[new Date(0),"$timestamp"]} 应该可以。
嗯,很多别的应用也是如此。所以小米手机基本上得允许安装来自未知来源的应用。
2017 年 12 月 6 日
回复了 imherer 创建的主题 › Node.js › nodejs 中大量短时间定时器实现方案?
@imherer 建议你看下源码,只有调用 cancel,才会从 scheduledJobs 这个字典里删除,否则就一直缓存在里面了。

这个设计勉强也可以理解,因为这个库就主要是为了那些会重复执行的 task 设计的。当然在新语法下,这个 scheduledJobs 应该用 WeakMap 比较好。

总之,你那需求应该用 setTimeout ……当然我觉得更好的做法是与客户端同步服务器时间,然后是直接告知在某某时间点某某道具开始有效,不必用定时器。生效前客户端就消耗了道具应该视为无效。正确消耗了,通知下一个时间点即可。
2017 年 12 月 6 日
回复了 imherer 创建的主题 › Node.js › nodejs 中大量短时间定时器实现方案?
@imherer 我死循环不断新建 job 然后 cancel 没有发现有问题
```
let schedule = require("node-schedule");

let count = 0;
function scheduleOne() {
if (count % 10000 === 0) {
console.log(count);
}
++count;
let j = schedule.scheduleJob("0 * * * 0,4-6", function() {
console.log("Today is recognized by Rebecca Black!");
});
setImmediate(() => {
j.cancel();
scheduleOne();
});
}

scheduleOne();
```

看你描述“当玩家在游戏过程中吃掉一个道具后,客户端告诉我,我就重新给这个道具一个 task 用来倒计时多长时间后这个道具恢复”这里旧的 task 有 cancel 么?定时把 node-schedule 里的 scheduledJobs 的大小打出来看看?
2017 年 12 月 6 日
回复了 imherer 创建的主题 › Node.js › nodejs 中大量短时间定时器实现方案?
说的是下面这个库?结尾没有 d 呀?
https://github.com/node-schedule/node-schedule
看起来这个库主要是运行那种定期执行的任务,可能设计时没太注意大量使用的情况?不过看代码 cancel 以后应该删除了,没看出什么问题……

其实几秒钟的时间用 setTimeout 更方便呀,不知道为什么舍近求远用这个库呢?
返回的是 cursor,肯定为 True 呀,你得调用.next()才可能获得一个空结果吧。
另外,这种约束条件一般是这样实现:在 ip 上建立一个 unique 的索引,然后每次都直接插入;如果已有,则会报错 duplicate,忽略即可。你这种 ifelse 不是“原子”操作,如果有多个进程同时工作,可能插入多条相同 ip 的。
2017 年 11 月 28 日
回复了 tuding 创建的主题 › 云计算 › 云计算会不会让运维失业?
啊,云服务难道不是运维为了减轻自己的负担顺手写的吗?
typescript+1
已内购
一般还是另外启动个进程吧?主要是单独重启方便,不影响其他服务进程。
当然也得看定时任务具体是啥……
2017 年 11 月 14 日
回复了 caogen9 创建的主题 › NGINX › NGINX 长连接 TCP 转发
tcp 转发?一般不都用 HAProxy 么。
2017 年 11 月 14 日
回复了 Corbusier 创建的主题 › 程序员 › 请教一个关于 js 异步/同步流程的问题
@Corbusier 其实已经“超长”了,是不是敏感字就不重要了,反正也不接受,都不用 ajax。当然如果按我之前说的顺序(或者你开始的要求),敏感字优先的话,那应该先显示“验证中”,ajax 回来才根据结果显示是“敏感词”还是“超长”。
2017 年 11 月 14 日
回复了 zo 创建的主题 › git › 关于 git 多分支合并的问题
checkout 到 master 分支上
git merge --squash feature
将 feature 分支上所有修改作为一个提交加到 master 上,检查一下所有修改即可。当然分支的历史就不在主分支了,但一般开发分支的历史也不重要。
2017 年 11 月 13 日
回复了 Corbusier 创建的主题 › 程序员 › 请教一个关于 js 异步/同步流程的问题
@Corbusier 这其实是两个状态,不应该互相干扰的。前端展示应该同时判断两个状态。
两个状态:
敏感:可能取值:等待验证结果、有敏感词、没问题
其他:可能取值:没问题、超长、特殊字符
一个前端展示函数:
敏感为有敏感词,显示为有敏感词。
敏感为等待验证结果,显示为等待中。
敏感为没问题,根据“其他”的状态显示。
输入完或异步回调完都调用展示函数即可。

不过我没明白为什么同步的判断优先级要比敏感词低。按理说应该是先通过了同步判断再进行 ajax 验证的。
2017 年 11 月 13 日
回复了 Corbusier 创建的主题 › 程序员 › 请教一个关于 js 异步/同步流程的问题
没懂,异步请求回来再同步判断会有什么问题?
过程中前端应该保持“等待服务器结果”的状态。

能用 await 的话代码更简单了。await 1 然后同步 2 呗……
2017 年 11 月 9 日
回复了 lmqdlr 创建的主题 › 程序员 › vscode 的图标又蓝回来了,嫌图标丑的可以更新了
嗯,总算跟 sublime 区别开了
1 ... 30  31  32  33  34  35  36  37  38  39 ... 55  
❮ ❯
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1456 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 43ms · UTC 18:22 · PVG 02:22 · LAX 11:22 · JFK 14:22
♥ Do have faith in what you're doing.