功能描述
不同页面脚本同时进行进行 GM_getValue,然后使用 GM_setValue往里面添加数据,可能导致部分页面添加的数据丢失。能否提供原子的比较替换api避免出错
使用场景
多个页面同时进行GM_getValue,GM_setValue操作
// critical area
do{
let value = GM_getValue('foo','');
newval = do_something(value);
}while(GM_compare_and_setValue('foo', newval, value) == 0);
//
附加说明
GM_compare_and_setValue(name, newval, oldval): bool
仅当当前name 的value等于oldval 才将name 设置为newval,并将返回结果true,否则返回false