Javascript运行时间函数观察者
Javascript elapsed time function observer
我想知道如果和如何可以编写一个观察其他函数的function
。更准确地说,obsever
跟踪observed
函数的执行时间,当后者超过给定的时间值时,observer
函数停止。
所以,简要:
function observed() { // ... }
/**
* Run a function and stop if this exceeds a given time.
*
* @param {Function} observedFunc The function to run and observe.
* @param {Number} maxTime The maximum elapsed time allowed.
*/
function observer(observedFunc, maxTime) {
/*
* if (observedFunc exceed the time)
* stop observedFunc;
* return;
* else
* return; (when the observed function return)
*/
}
是否有可能在不改变observed
功能的情况下负担得起?
只能在支持它的浏览器中使用Web worker。如果你在一个Web Worker中运行observed
,那么主脚本可以在Worker上调用terminate()。
通常(至少历史上)Javascript是单线程的,因此当observed
运行时,observer
无法停止它。
相关文章:
- 未激发路由的控制器属性上的观察者
- 将属性设置为未定义时未通知观察者
- 检测 DIV 的高度何时变化,而无需轮询或突变观察者
- JavaScript:为什么Addy's观察者模式
- 设置多个观察程序以触发动态事件的角度替代解决方案 - 优化的观察者模式
- 被动.js模式间接观察者报告相同的值
- 将$scope对象作为参数提供给$digest中的观察者背后的逻辑
- 取代了棱角分明的深度观察者
- 突变观察者尚未定义
- 突变观察者未能检测到元素's删除dom
- 手动调整元素大小;不要在Chrome中激发突变观察者
- 共同描述编译器和观察者
- 如何确保对观察者的订阅调用最初接收到最新的值
- 未捕获的类型错误:无法执行'观察'在'突变观察者':参数1不是'节点'
- 在jQuery数据表中使用AngularJS观察者的方法是什么
- nodejs:原子文件替换操作,只触发一次一些观察者
- 阵列突变而不触发特定的观察者
- 变异观察者- DOM被回调函数改变
- 调用观察者的JS函数
- Javascript运行时间函数观察者