Windows10升级到Windows11 Office未激活解决方案

Windows11出了很久了,昨天才升级,今天打开Word发现激活不了,我的是2019的版本,然后发现是Windows系统的注册表的问题,想要找到解决方案还不简单,所以记录一下。

解决方案:

  1. Win + r打开输入regedit打开注册表
  2. 在最上面输入计算机\HKEY_USERS\S-1-5-20
  3. 在下面找到对应的文件夹,然后右键点开修改文件夹权限。
  4. 创建一个Everyone用户,然后赋予完全控制的权限。
  5. 再打开Word进行激活,就成功了。

在这里插入图片描述

### Redisson 分布式锁中超时看门狗的实现原理 在分布式环境中,为了防止死锁并确保资源能够及时释放,通常会对锁设置一个超时时间。然而,在实际应用中,可能会遇到业务逻辑处理时间超过预期的情况。为此,Redisson引入了看门狗(watchdog)机制来解决这一问题。 当客户端成功获取到锁之后,Redisson内部会启动一个定时器任务,该任务负责定期检查当前持有的锁是否已经接近过期[^2]。具体而言: - **默认配置**:每次获得锁时,Redisson会给这个锁设定一个初始的有效期限,默认情况下为30秒。 - **续期操作**:一旦持有锁的时间超过了总有效期的一半以上(例如15秒),看门狗就会触发一次续期请求,将锁的有效期再延长至完整的30秒。这样的过程会持续进行,只要锁还有被显式地解锁或因其他原因失效。 - **间隔策略**:按照预设算法计算下次续期的最佳时机,通常是每经过大约三分之一的有效期间隔就尝试更新一次锁的有效期。比如,假设有效时间为30秒,则每隔约10秒钟左右就会有一次续期动作[^3]。 这种设计可以有效地避免因为网络延迟或其他不可预见的因素而导致提前失去锁控制权的风险,同时也保障了即使是在极端条件下也能安全可靠地管理共享资源访问权限。 此外,值得注意的是,只有当线程确实处于活动状态并且继续占用着对应的锁实例时,才会执行上述提到的自动延展流程;反之,如果线程正常结束或者异常终止,则不再会有任何关于此特定锁的操作发生[^4]。 ```java // Java代码示例展示如何使用RedissonClient创建RLock对象,并通过tryLock方法指定等待时间和租约时间 import org.redisson.api.RLock; import java.util.concurrent.TimeUnit; public class DistributedLockExample { private final RedissonClient redissonClient; // 假定已初始化 public void acquireDistributedLock() throws InterruptedException { RLock lock = redissonClient.getLock("myLock"); boolean isLocked = lock.tryLock(10, 30, TimeUnit.SECONDS); // 尝试加锁,最多等待10秒,锁定后保持30秒 if (isLocked) { try { // 执行临界区内的业务逻辑... } finally { lock.unlock(); // 确保最终总是能释放锁 } } } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值