自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 Java 交替输出两个线程,打印0-100的奇偶数

当然,还可以在子类方法中调用父类中相应的方法,这样虽然子类中的方法不是同步的,但子类调用了父类的同步方法,因此,子类的方法也就相当于同步了。与wait()方法不同,执行notify()后,不会立即释放对象锁,而需要执行完synchronized的代码块或方法才会释放锁,所以接收通知的线程也不会立即获得锁,也需要等待执行notify()方法的线程释放锁后再获取锁。调用notify()方法后,会通知一个执行了wait()方法的阻塞等待线程,使该等待线程重新获得取到对象锁,然后继续执行wait()后面的代码。

2024-08-30 10:01:15 816

原创 Android 实现Dialog自定义弹窗功能

在Android应用开发过程中,弹窗是一个常用的UI组件,可以用来显示一些提示、警告或者用户交互的内容。Android提供了一些默认的弹窗,比如AlertDialog,但是有时候我们需要自定义弹窗来满足特定的需求。本文将介绍如何在Android中自定义弹窗,并提供一个简单的代码示例。接下来,在你的 Activity 或 Fragment 中创建并显示这个自定义弹窗。通过这种方式,你可以在不同的状态下显示不同的弹窗内容和操作选项,满足的需求。首先,创建一个 XML 文件,用于定义弹窗的布局。

2024-08-29 17:49:55 667

原创 Fragment学习总结

用来组建Activity界面的局部模块, 也可以说一个Actiivty界面可以由多个Fragment组成其行为与Activity很相似, 有自己对应的布局(包含具体的View), 它有自己的生命周期,接收自己的输入事件,并且可以从运行中的activity中添加或移除一个fragment必须总是嵌入在一个activity中,同时fragment的生命周期受activity的影响本质上会产生一个FrameLayout,它加载的布局为其子布局优势:模块化:我们不必把所有代码全部写在Activity中,而是把代码写

2024-03-05 08:09:27 516

原创 释放锁时的不同情况

Java 提供了读写锁,在读的地方使用读锁,在写的地方使用写锁,灵活控制,如果没有写锁的情况下,读是无阻塞的,在一定程度上提高了程序的执行效率。与wait()方法不同,执行notify()后,不会立即释放对象锁,而需要执行完synchronized的代码块或方法才会释放锁,所以接收通知的线程也不会立即获得锁,也需要等待执行notify()方法的线程释放锁后再获取锁。多个线程去获取锁的时候,会直接去尝试获取,获取不到,再去进入等待队列,如果能获取到,就直接获取到锁。

2024-01-31 19:35:14 1118 1

原创 交替输出两个线程,并显示执行次数

当然,还可以在子类方法中调用父类中相应的方法,这样虽然子类中的方法不是同步的,但子类调用了父类的同步方法,因此,子类的方法也就相当于同步了。与wait()方法不同,执行notify()后,不会立即释放对象锁,而需要执行完synchronized的代码块或方法才会释放锁,所以接收通知的线程也不会立即获得锁,也需要等待执行notify()方法的线程释放锁后再获取锁。修饰一个代码块,被修饰的代码块称为同步语句块,其作用的范围是大括号{}括起来的代码,作用的对象是调用这个代码块的对象。

2024-01-31 17:14:19 1482 2

空空如也

空空如也

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

TA关注的人

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