自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 资源 (2)
  • 收藏
  • 关注

原创 CAS方式来尝试获取锁

总结来说,CAS(Compare and Swap)方式是一种基于原子操作的乐观锁技术,用于解决并发环境下的数据竞争问题。在锁的获取中,CAS 方式常用于实现自旋锁,即线程不断重试获取锁,而不是进入阻塞状态。如果多个线程同时执行 CAS 操作,只有一个线程能够成功,其他线程会根据操作的结果进行重试。如果更新失败,说明锁已被其他线程占用,会继续自旋等待,直到成功获取到锁。在锁的获取中,CAS 方式常常被用于实现自旋锁,即线程在没有获取到锁时,会不断地重试获取锁,而不是进入阻塞状态。作为标识,表示锁的状态。

2023-06-27 20:53:11 295

原创 为什么wait, notify 和 notifyAll这些方法不在thread类里面?

线程可以在对象上等待(通过wait()方法),并且其他线程可以通知等待中的线程(通过notify()或notifyAll()方法)。因此,通过将wait()、notify()和notifyAll()方法定义在Object类中,Java提供了一种通用且灵活的方式来实现线程之间的协作与通信。在Java中,wait()、notify()和notifyAll()方法是用于线程之间的协调与通信的机制,它们不在Thread类中,而是在所有对象的基类Object中定义。

2023-06-27 19:52:12 721

原创 使用interrupt方法中断线程

在Java编程语言中,可以使用Thread类的interrupt()方法中断线程的执行。在上面的示例中,MyThread类继承自Thread类,并在run()方法中执行线程的任务。通过检查isInterrupted()方法来判断线程的中断状态,并在适当的时候终止执行。请注意,中断线程只是一种协作机制,线程在执行期间需要通过检查中断状态来决定是否终止。因此,您需要根据具体的线程逻辑来判断何时中断线程的执行。请根据您使用的编程语言和线程模型选择相应的中断机制,并根据具体情况使用相应的方法来中断线程。

2023-06-27 19:33:27 192

原创 ZooKeeper 学习笔记

ZooKeeper 是一个可靠的、高效的分布式协调服务,它可以用于解决分布式系统中的一些常见问题,如分布式锁、集群领导选举、配置管理等。在使用 ZooKeeper 时需要注意以下几点:ZooKeeper 的数据模型是基于树形结构的,可以使用路径进行访问和操作。ZooKeeper 提供了多种类型的节点,包括持久节点、临时节点、有序节点等,可以根据需求进行选择。ZooKeeper 提供了事件通知机制,可以通过监听节点的变化来获取数据。

2023-04-28 19:00:23 129 1

原创 Redis学习笔记

本文介绍了Redis的基本概念、数据结构、常用命令以及高级特性,包括事务、Lua脚本、发布-订阅、持久化和分布式锁等。同时还提供了一些Java代码示例,以帮助读者更好地理解Redis的使用方法。Redis作为一款高性能、高可靠、高扩展性的NoSQL数据库,在互联网应用开发中有着广泛的应用。掌握Redis的基本知识和技能,对于Java程序员来说是非常重要的一项技能。

2023-04-25 21:53:41 124 1

原创 Dubbo 学习笔记

Dubbo是一款高性能、可扩展、可靠性强的分布式服务框架,可以帮助开发人员构建高性能、高可靠性的分布式应用。在使用Dubbo时,需要先了解其核心概念和机制,然后再根据具体的业务场景进行配置和使用。

2023-04-25 21:25:24 237 1

金山词霸中带了一个XdictGrb.dll,利用它可以实现鼠标取词。

金山词霸中带了一个XdictGrb.dll,利用它可以实现鼠标取词。

2022-07-22

java-mp3spi

利用java实现mp3播放

2022-07-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除