问题描述
我有一个运行有多个人参与的,带有Google Apps脚本脚本的Google文档。人们编辑工作表时会触发一个onEdit
触发器。据我了解,如果有人编辑工作表,则会触发我的onEdit
触发功能。
如果第二个人在第一个onEdit
完成处理之前编辑工作表,则它将停止第一个实例,而第二个onEdit
在不完成第一个实例的情况下启动。
为避免这种情况,我尝试通过以下理论使我的代码尽可能高效:如果onEdit
进程花费的时间较少,那么重叠的可能性就较小。为了做到这一点,我尝试最小化我的读/写。通过使用一系列的记录器语句,我跟踪了很耗时的代码行。我注意到我的setValues()
行之一需要近6秒钟来运行。在对它进行调整之后,这是一个很大的数组,会被发回到工作表中。
我的问题:
- 与
setValues()
相比,setValue()
通话需要更长的时间吗? - 与大数组的
setValues()
相比,对小数组的setValues()
调用所花费的时间短吗?
我知道一个setValues()
会比1000个setValue()
命令快得多。
我认为无论大小如何,一次写入工作表应该花费相同的时间。有什么办法可以使这段时间最小化?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)