<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Xinghf]]></title><description><![CDATA[实践 总结 学习]]></description><link>https://blog.youkuaiyun.com/lovesummerforever</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; lovesummerforever]]></copyright><item><title><![CDATA[博客乔迁]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/79392772</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/79392772</guid><author>lovesummerforever</author><pubDate>Tue, 27 Feb 2018 20:14:15 +0800</pubDate><description><![CDATA[开通了个人博客网站,欢迎访问:     http://www.codingfuns.com




  博客地址



  http://www.codingfuns.com




刚开通多有不足之处,请留言哈~~~非常感谢

最近更新的一些文章：




  文章题目
  文章链接地址
  更新日期



  com.mysql.cj.jdbc.exceptions.PacketTooBigE...]]></description><category></category></item><item><title><![CDATA[(3)mysql index]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78866449</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78866449</guid><author>lovesummerforever</author><pubDate>Thu, 21 Dec 2017 18:20:59 +0800</pubDate><description><![CDATA[生活中的索引最常见的书籍是有目录的，也可以叫做为索引。为啥用索引？为快不破，为了快速的查找到我们想要的东西，书中的索引可以快速查询到我们想看的章节内容。DB中的索引亦是如此。 索引本质本质就是查找算法和数据结构，学过很多查找算法，顺序查找、二分查找、归并查找等等，如果DB不加索引就是对全表进行扫描，所说的全表扫描就是顺序查找。而mysql InnoDB中的索引就是有二分查找算法中的二分思想，二分查找]]></description><category></category></item><item><title><![CDATA[ll -bash: ls: command not found]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78848860</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78848860</guid><author>lovesummerforever</author><pubDate>Wed, 20 Dec 2017 17:05:13 +0800</pubDate><description><![CDATA[问题简单描述：在centos6系统上安装jdk,配置/etc/profile文件后, ll ls 命令都不好用了。1、网上查了查是因为缺少环境变量 
执行export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:$PATH 即可，但是每次打开新的连接每次都要重新export。 
2、/usr/bin 是unix操作系统的标准目录，其中包含大部分]]></description><category></category></item><item><title><![CDATA[zookeeper down dubbo also down?]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78817435</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78817435</guid><author>lovesummerforever</author><pubDate>Wed, 20 Dec 2017 00:38:10 +0800</pubDate><description><![CDATA[dubbo注册中心挂掉后，dubbo会立即挂掉吗？搞个环境，test1、安装jdk 
2、安装nohup（yum install coreutils 可以让zookeeper在后台运行） 
3、安装zookeeper 
4、dubbo client server 分别配置zookeeper 
5、在zookeeper后台查看dubbo的providers 和consumers 
6、kill掉zoo]]></description><category></category></item><item><title><![CDATA[(2)mysql--查询部门人数最多的部门]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78806983</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78806983</guid><author>lovesummerforever</author><pubDate>Thu, 14 Dec 2017 20:52:11 +0800</pubDate><description><![CDATA[简述： 
找出部门人数大于或等于10个人的部门。 
要点1、函数count（） + group by。2、having 字句查询。3、建立的表结构，以及添加的数据如下sql。-- ----------------------------
-- Table structure for employee_info
-- ----------------------------
DROP TABLE IF]]></description><category></category></item><item><title><![CDATA[(1)mysql--查询成绩最高和最低的人]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78806765</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78806765</guid><author>lovesummerforever</author><pubDate>Thu, 14 Dec 2017 20:30:19 +0800</pubDate><description><![CDATA[简单描述： 
成绩表中有学生姓名、学生科目以及学生分数。查询分数最高和分数最低的学生的以及学生的分数。 
1、group by，select 选择的列，必须是group by 中的列，或者是函数形式。 
2、利用MAX（） 和MIN（）sql函数。 
3、建立的表结构如下。-- ----------------------------
-- Table structure for grade
--]]></description><category></category></item><item><title><![CDATA[(十七)java并发编程--任务执行之线程池的使用]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78785568</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78785568</guid><author>lovesummerforever</author><pubDate>Tue, 12 Dec 2017 21:39:24 +0800</pubDate><description><![CDATA[大多数并发程序围绕着”任务执行”来构造的: 任务通常是一些抽象的且离散的工作单元。通过把一个用程序的共工作分解到多个任务中，可以简化程序的组织结构， 
提供一种自然的事务边界来优化错误恢复过程，以及提供一种自然的工作结构来提升并发性。1在线程中执行任务
2串行执行任务
1显示的为任务创建线程
2 无限制创建线程的不足
Executor框架
1 基于Executor的web服务器
2 执行策略
3 线]]></description><category></category></item><item><title><![CDATA[（十六）java并发编程--线程的死锁解决方案(生产者和消费者几种实现方式)]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78755328</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78755328</guid><author>lovesummerforever</author><pubDate>Fri, 08 Dec 2017 20:37:18 +0800</pubDate><description><![CDATA[上一篇中,主要了解了什么时候死锁，并且提出死锁的一个解决方案，多个锁要按照一定的顺序来。

本片主要是利用生产者消费者模式解决线程的死锁。

多线程生产者和消费者一个典型的多线程程序。一个生产者生产提供消费的东西，但是生产速度和消费速度是不同的。这就需要让生产者和消费者运行不同的线程，通过共享区域或者队列来协调他们。如下图所示： 


代码如下:

package deadlock.comsume]]></description><category></category></item><item><title><![CDATA[（十五）java并发编程--线程的死锁(deadlock)]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78755306</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78755306</guid><author>lovesummerforever</author><pubDate>Fri, 08 Dec 2017 20:33:28 +0800</pubDate><description><![CDATA[线程在操作系统使用不同的资源,一般以以下方式使用这些资源。 
1）请求一个资源。 
2）使用这个资源。 
3）释放资源。1什么是死锁
2解决死锁的办法
上述代码我们这么解决死锁呢1、什么是死锁？死锁的情况是，一些线程被阻塞，每个线程都拥有一个资源，并且等待另外一个进程以获取另外的一个资源。 
想了想类似于生活中的哪些情形，我拥有有一本书（资源使用）叫做《java并发编程》 ，你拥有一本叫《java虚]]></description><category></category></item><item><title><![CDATA[（十四）java并发编程--线程的阻塞]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78747180</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78747180</guid><author>lovesummerforever</author><pubDate>Thu, 07 Dec 2017 23:11:37 +0800</pubDate><description><![CDATA[1yield
2join
3sleep
4wait
java中我们可以使用线程类的三种方式来阻止线程的执行。 
线程的状态图如下（图片来自网络）： 
1、yield（）yield英文的意思是屈服，如同其意，会让另一个线程屈服。 
yield()方法可以暂停当前执行的线程,以便为相同优先级的其他等待线程提供机会, 如果没有等待线程, 或者等待线程的 
优先级较低, 那么相同的线程将会执行。当获得执行机]]></description><category></category></item><item><title><![CDATA[（十三）java并发编程--线程中断]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78747068</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78747068</guid><author>lovesummerforever</author><pubDate>Thu, 07 Dec 2017 22:56:51 +0800</pubDate><description><![CDATA[1自己添加线程退出标志位
2调用Thread stop方法停止线程
3使用interrupt方法中断线程1、自己添加线程退出标志位。如下代码所示：package thread_priority;/**
 * Created by fang on 2017/12/3.
 *
 */
public class MyThread implements Runnable {
    private bool]]></description><category></category></item><item><title><![CDATA[（十二）java并发编程--线程优先级]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78715575</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78715575</guid><author>lovesummerforever</author><pubDate>Thu, 07 Dec 2017 22:37:23 +0800</pubDate><description><![CDATA[线程的优先级并不能保证现成的执行次序。只不过，优先级高的线程获取CPU资源的概率较大，优先级低的也并不是没有机会执行。
  
  优先级用1-10的整数表示，数值越大优先级越高，默认优先级为5。
  
  在一个线程中开启另外一个线程,则新开线程称为该线程的子线程,子线程初始优先级与父线程相同。
如下代码中，package thread_priority;/**
 * Created by fang]]></description><category></category></item><item><title><![CDATA[（十一）java并发编程--java.util.concurrent.Callable]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78698937</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78698937</guid><author>lovesummerforever</author><pubDate>Sat, 02 Dec 2017 22:47:38 +0800</pubDate><description><![CDATA[本篇文章用到了java并发包中的这几个接口和类 
java.util.concurrent.Callable 
java.util.concurrent.FutureTask 
java.util.concurrent.Future 
java.util.concurrent.Executor1.使用Callable + FutureTask方式,代码如下所示。]]></description><category></category></item><item><title><![CDATA[（十）java并发编程--创建和启动线程（java.lang.Thread 、java.lang.Runnable）]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78682697</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78682697</guid><author>lovesummerforever</author><pubDate>Fri, 01 Dec 2017 01:22:26 +0800</pubDate><description><![CDATA[线程创建的几种方式.创建和启动一个线程
线程的子类
Runnable 接口实现方式
继承还是使用Runnable
通常的陷阱调用run方法替代start
线程的名字
ThreadcurrentThread
java 线程例子
线程声明异常和线程体的返回值CallableFuture使用创建和启动一个线程创建一个线程.Thread thread = new Thread();启动java线程.thre]]></description><category></category></item><item><title><![CDATA[（九）java并发编程--java.lang.TheadLocal]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78620588</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78620588</guid><author>lovesummerforever</author><pubDate>Thu, 30 Nov 2017 23:22:35 +0800</pubDate><description><![CDATA[java并发编程synchronized+volatile单例模式实例(安全初始化模式实例)

（七）java并发编程–锁机制]]></description><category></category></item><item><title><![CDATA[（八 附）java并发编程--JVM之指令重排分析]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78667955</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78667955</guid><author>lovesummerforever</author><pubDate>Wed, 29 Nov 2017 18:10:11 +0800</pubDate><description><![CDATA[引言：在Java中看似顺序的代码在JVM中，可能会出现编译器或者CPU对这些操作指令进行了重新排序；在特定情况下，指令重排将会给我们的程序带来不确定的结果.....




什么是指令重排
数据依赖性
as-if-serial语义
在多线程下的指令重排
指令重排的原因分析
如何防止指令重排
可见性
参考文献




1.什么是指令重排？

  在计算机执行指令的顺序在经过程序编译器编译之后形成的指]]></description><category></category></item><item><title><![CDATA[（八）java并发编程--java内存模型]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78658908</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78658908</guid><author>lovesummerforever</author><pubDate>Wed, 29 Nov 2017 18:07:02 +0800</pubDate><description><![CDATA[首先是什么是java内存模型？

  不同的操作系统有不同的内存模型，“内存模型”一词可以理解为在特定操作写一下，对特定的内存或者高速缓存进行读写访问的抽象过程。 
  不同的物理机有不同的内存模型。而java内存模型是来屏蔽掉各种不同物理机及其不同操作系统的内存访问差异，以实现java程序在各种平台下都能达到一致的访问效果。 
  java 内存模型解释了java虚拟机是如何与计算机内存(RAM)工作的。 
  下]]></description><category></category></item><item><title><![CDATA[（七）java并发编程synchronized+volatile(安全初始化模式实例)]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78620585</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78620585</guid><author>lovesummerforever</author><pubDate>Sun, 26 Nov 2017 18:26:29 +0800</pubDate><description><![CDATA[java并发编程synchronized+volatile单例模式实例(安全初始化模式实例)]]></description><category></category></item><item><title><![CDATA[（六）java并发编程--synchronized同步块]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78619798</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78619798</guid><author>lovesummerforever</author><pubDate>Fri, 24 Nov 2017 01:30:40 +0800</pubDate><description><![CDATA[虽然前面文章的一些实例中已经使用synchronized关键字来实现线程的同步，但还是需要好好的理解一下。 
[TOC]

java synchronized 关键字 

synchronized实例方法

synchronized静态方法

实例方法中的同步块

静态方法中的同步块

java synchronized 实例(安全初始化模式实例)

java并发应用程序]]></description><category></category></item><item><title><![CDATA[(14) intellij plugins-- ideavim]]></title><link>https://blog.youkuaiyun.com/lovesummerforever/article/details/78619100</link><guid>https://blog.youkuaiyun.com/lovesummerforever/article/details/78619100</guid><author>lovesummerforever</author><pubDate>Thu, 23 Nov 2017 21:40:23 +0800</pubDate><description><![CDATA[ideaVim  插件下载


vim相关快捷键


  参考:https://vim.rtorr.com/lang/zh_cn/


vim常用快捷键

vim常见的有两种模式,一种是insert模式,像编辑器一样正常的输入字符编辑字符. 一种是Normal模式,在该模式下可以快速的修改.

光标的移动 
h,j,k,l : 左  下  上  右 
w: 光标移动到下一个单词的首位 
b:光标移]]></description><category></category></item></channel></rss>