笔记
文章平均质量分 50
素念雨
这个作者很懒,什么都没留下…
展开
-
synchronized锁住的到底是什么
1.线程安全 (1)为什么会造成线程安全问题 在java中,一般有2个原因造成线程不安全:一是存在共享数据(也称临界资源),二是存在多条线程共同操作共享数据。 (2)判断一个线程是否安全的一个重要原则 是否有多线程访问可变的共享变量。 (3)如何解决 1.使用同步机制限制变量的访问:锁,比如Synchronize。 也就说只要我们让共享的资源通过排队的方式来进行消费,就可以实现线程安全。 这里Synchronize就是让同享的资源获取时,进行阻塞,要等占用这个资源的。 2.使用关键字final。 2.Syn原创 2021-03-16 14:47:23 · 742 阅读 · 2 评论 -
java冒泡排序
java冒泡排序 1.排序思路 (1)将数组中的数进行从左至右两两比较,每次比较选出一个最大值,并把这个最大值不断移动到最右端,完成一次排序。 (2)去除刚才最右端的数,进行下一轮重复排序即可。 2.代码思路 (1)假设数组长度为N,外层循环次数确定,每次排序确定一个最大值,所以外层循环为N-1。 (2)内层循环为两两比较,所以每完成一次排序则循环次数-1。 (3)从左至右两两比较,遇到左侧数比右侧数更大的情况,需要交换两数位置,否则无需进行交换。此时完成一次比较。 3.代码示例 public static原创 2021-03-04 12:11:40 · 113 阅读 · 1 评论