自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

lidongxiu0714

读书以博学,实践以登高!!!

  • 博客(10)
  • 收藏
  • 关注

原创 DialogFragment监听back键和设置宽高

implements AddressManagerView , DialogInterface.OnKeyListener {@Nullable@Overridepublic View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInst...

2019-09-20 10:17:23 2380 1

原创 Fragment addToBackStack(null)的作用

Fragment常用于一个activity中展示多个相对独立的部分,利用add,show,hide进行fragment的添加,展示和隐藏。 FragmentA fragmentA = FragmentA .newInstance(parameter); getSupportFragmentManager().beginTransaction() ...

2019-09-20 10:16:27 5121 1

原创 线程的状态

线程的状态 public enum State { /** * Thread state for a thread which has not yet started. */ NEW, /** * Thread state for a runnable thread. A thread in...

2019-09-01 10:44:37 197 1

原创 Messenger 实现进程间通信IPC

AIDL可以实现进程间通信,但使用稍显复杂,Messenger也可以实现进程间通信,Messenger底层实现利用了 AIDL ,系统已经帮我们完成了Aidl的书写。Messenger可以在不同进程中传递 Message 对象,利用Handler一次只处理一个请求,不存在并发执行的情形。所以这是Messenger的优点,也是它的缺点,它无法用于大量的并发操作,但对于简单的进程间通信则十分好用。利用...

2019-09-01 10:23:50 261

原创 使用锁实现同步简单使用

如果想要static方法和普通的方法在同步情况下不能同时执行,单靠synchronized实现非常有难度,因为静态方法以class对象为锁,普通方法以具体的具体的对象为锁,java提供的另一种同步机制利用Lock接口及其实现类,比synchronized更加灵活。synchronized可以支持更灵活的同步代码块结构,synchronized只能在synchronized块结构中获取和释放锁,L...

2019-09-01 10:22:37 392

原创 synchronized实现同步

利用synchronized关键字是最简单的实现同步的方式,synchronized可以用于方法,代码块,synchronized可以保证在同一时刻,只有一个线程可以执行某个方法或某个代码块,同时synchronized可以保证一个线程的变化可见。也就是保证了临界区某一时刻只能被一个线程访问(被synchronized修饰的方法,或者代码块都是临界区)。当一个线程进入了临界区,其他试图访问该临界区...

2019-09-01 10:22:15 379

原创 影响线程执行的函数(sleep,join,yield,priority,daemon)

1 sleepsleep使当前线程睡眠指定的毫秒数(暂停执行),但由于系统计时器和调度方法的影响,时间不是那么精准。当线程在同步代码中持有monitor时,sleep不会导致线程释放已经获取的锁(虽然当前线程暂停了,但其他竞争线程依然无法获取锁)。会抛出线程中断异常,必须处理。到达指定之间之后,线程会自动苏醒,变为可运行状态而不是运行状态,所以sleep内的时间是线程休眠的最短时间。sle...

2019-09-01 10:20:48 477

原创 线程同步和同步原理

1 多线程问题,临界区单线程由于按顺序继承(即使存在编译器优化,指令重排等优化策略也会保证程序的正确执行),多线程情况下,如果存在共享资源的情况,就会出现并发问题。多个线程访问或者修改共享数据,会导致数据的不一致性,进而导致出错,线程同步机制就是用来防止错误发生的机制。临界区定义为访问共享资源的代码块,如果同一时间能够保证只有一个线程访问临界区,就不会发生错误。public class D...

2019-09-01 10:15:48 1560

原创 如何结束线程-线程中断

线程停止的方式:线程执行完毕,自然会停止异常退出设置了标志位,当标志位为false时退出线程中断退出线程函数执行完毕正常退出和发生异常被迫退出都不受我们控制,下面讨论控制线程停止的方式。设置退出标志位:package com.sync.demo;import javax.swing.text.html.HTML.Tag;public class Demo5 { pub...

2019-09-01 10:14:56 334

原创 线程间交互(wait notify)

1 线程间交互线程间的交互,也就是相互通知,进而达到相互控制,java中线程间的交互要用到java.lang.Object的类的三个方法分别是wait,notify(),notifyAll,三个方法的调用必须在同步环境内调用,也就是线程获取了对象的锁后才能调用。如果线程A持有线程B的对象的锁,多线程环境下只有当线程A获取了线程B的锁后(同步环境下)时,线程A才能调用B的wait,notify(...

2019-09-01 10:13:01 873

空空如也

空空如也

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

TA关注的人

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