我正在使用Parallel.For循环来提高计算的执行速度.
我想测量计算剩下的大致时间.通常,只需要测量每个步骤所需的时间,并通过将步骤时间乘以步骤总数来估计总时间.
例如,如果有100个步骤并且某个步骤需要5秒钟,那么除了总时间约为500秒之外,其中一个步骤可以.(可以平均几个步骤并不断向用户报告我想做的事情).
我能想到的唯一方法就是使用一个外部for循环,它基本上通过拆分parallel.for间隔并测量每个循环来回归到原始方式.
for(i;n;i += step)
Time(Parallel.For(i, i + step - 1, ...))
Run Code Online (Sandbox Code Playgroud)
这通常不是一种非常好的方法,因为少数非常长的步骤或大量的短步骤会导致计时问题.
有人有主意吗?
(请注意我需要实时估算parallel.for完成的时间,而不是总时间.我想让用户知道执行剩余的时间).
GM_setValue将数据存储在chrome中的哪个位置.我试图确定数据的去向,但无法弄明白.我用进程监视器进行监视,看到当我存储一个值时,chrome正在更新chrome_iwoeoiifoi2h3iofhufsdfnvdf类型的文件,然后用sqlite浏览器打开它但数据不存在.我查看了所有最近修改过的文件,试图查找数据但找不到它.
最新的chrome/TM.
如果我使用Tampermonkey以编程方式创建div:
HTML:
<div onclick="myfunc()"/>
Run Code Online (Sandbox Code Playgroud)
脚本:
function myfunc() { alert("clicked"); }
Run Code Online (Sandbox Code Playgroud)
然后点击div; myfunc在我的脚本中没有调用.
我怎样才能让它发挥作用?
(我使用TM/jQuery将div添加到页面中,我想附加一些功能.我假设我必须将HTML中的函数调用重定向到正确的位置.我也使用GM_函数,所以我不能只需直接插入代码.)