小编h--*_*--n的帖子

Ember多个控制器实例

我已经使用了Ember一段时间,但有时仍在努力寻找最佳实践.所以关于控制器和视图的Ember方法之一是

由路由器强制执行的Ember设计者的意见是,对于给定的BaseName(例如"Application","CustomerEntry","My Items"),应该有BaseNameView和BaseNameController.- 灰烬指南

问题是,如果我想在页面上的同一视图的多个实例,该怎么办?由于控制器是在应用程序启动期间创建的,因此它们是应用程序命名空间下的单例,它们将无法容纳模型数据的两个实例.

我看到的一个解决方案是手动创建控制器(和模型数据)并将它们传递给视图.但在这种情况下,我希望Ember不会自动为我创建控制器.换句话说,为什么Ember会在应用程序启动期间将控制器创建为单例.

model-view-controller ember.js

11
推荐指数
1
解决办法
749
查看次数

Haskell,测量函数的CPU时间

我需要测量一个函数的CPU时间,如下所示:

t <- getCPUTime
res <- callTheFunction input
t' <- getCPUTime
print $ t' - t
Run Code Online (Sandbox Code Playgroud)

问题来自Haskell的懒惰.必须严格评估callTheFunction.我搜索了很多,并尝试使用seq和$!但没有成功.我认为这应该是一项非常普遍的任务.无论如何,我需要一些帮助.谢谢.

更新: 感谢您的所有帮助,尤其是@FUZxxl.它让我想起WHNF(弱头标准形式)和标准形式之间的区别. Haskell/Laziness 有助于理解Haskell的惰性评估.

我需要的是再做一步评估.无论如何$!只要只需要WHNF,就可以评估两种工作:

t <- getCPUTime
res <- callTheFunction input
evaluate res  OR  return $! res
t' <- getCPUTime
print $ t' - t
Run Code Online (Sandbox Code Playgroud)

haskell lazy-evaluation

9
推荐指数
2
解决办法
2551
查看次数