google-apps-script - 如何检查 Google App Script 中的函数是否已被其他用户执行?

标签 google-apps-script web-applications locking

我在 Google App 脚本中有一个函数(函数 doGet()),它是从 Chrome 扩展程序调用的。每次用户单击 chrome 扩展 popup.html 中的按钮时都会调用此函数。 popup.html 中的此按钮同时被 30 多个用户点击。我可以检查一下,如果该函数已经由一个用户执行,那么下一个用户在此之前无法执行它吗?

最佳答案

您可以使用Lock Service应用程序脚本。

The Lock Service allows scripts to prevents concurrent access to sections of code. This can be useful when you have multiple users or processes modifying a shared resource and want to prevent collisions.

function doGet(){
  var lock = LockService.getScriptLock();
  lock.waitLock(10000); // in milliseconds

// Your code

 lock.releaseLock();
}

关于google-apps-script - 如何检查 Google App Script 中的函数是否已被其他用户执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45816748/

相关文章:

javascript - 使用 Javascript 从 Ajax TabContainer 获取 ActiveTabIndex

multithreading - TMREWSync(TMultiReadExclusiveWriteSynchronizer)问题

java - 为什么ArrayBlockingQueue中两个线程可以获取带条件的ReentrantLock

javascript - 从 Google Apps 脚本查询 Google 表格

google-apps-script - 如何解码 HTML 实体

javascript - 转换来自谷歌驱动器的所有 csvs

google-apps-script - 在工作表之间重用 Google Apps 脚本代码(公司内部)

web-applications - 什么是可用于 Web 应用程序的跨浏览器和跨操作系统安全键盘快捷键?

c# - 如何添加Excel Online插件?

java - 使用 FileLock 将行追加到文件