原创 volatile的非原子性

package com.freeflying.thread.volatil; /** * volatile的非原子性 * @ClassName: VolatileNotAtomic * @Description: * @aut

原创 原子類進行i++操作實現線程安全

package com.freeflying.thread.volatil; import java.util.concurrent.atomic.AtomicInteger; /** * 使用原子類進行i++操作實現線程安全 * @

原创 synchronized同步方法時的死循環

package com.freeflying.thread.sync; //死循環 public class SyncMethodDeadLock { public static void main(String[] args) {

原创 用eclipse通過數據庫生成實體類-mysql

1.show Data Source Explore    ->window->show view->Data Source Explorer(如果沒有存在則在other中選擇)           選擇後會多一個view-Data So

原创 同步死循環

package com.freeflying.thread.volatil; /** * 通過valatile解決同步死循環 * @ClassName: HandleSyncDeadCycle * @Description:vo

原创 單例模式

定義: 一個應用只產生一個實例 通用代碼1-餓漢模式(缺點:instance是在類加載時初始化,如果初始化太早造成資源浪費) public class Singleton(){ private static final Single

原创 String類型作爲鎖的弊端

package com.freeflying.thread.sync; /** * 使用String類型作爲鎖 * @ClassName: ConstantPoolString * @Description: * @autho

原创 原子類不完全原子性

package com.freeflying.thread.volatil; import java.util.concurrent.atomic.AtomicLong; /** * 原子類不完全原子性 * @ClassName:

原创 wait釋放線程鎖資源

package com.freeflying.thread.communication; /** * wait方法是否鎖 * @ClassName: WaitReleaseLock * @Description: * @au

原创 notify不釋放鎖

package com.freeflying.thread.communication; /** * Notify不釋放鎖 * @ClassName: NotifyNotReleaseLock * @Description:

原创 同步死循環解決

package com.freeflying.thread.volatil; /** * 通過線程的方式處理同步死循環 * @ClassName: HandleAsyncDeadCycle * @Description: *

原创 wait時interrupt出現異常

package com.freeflying.thread.communication; /** * 在wait時線程被interrupt * @ClassName: InterruptMeetWait * @Descript

原创 sleep同步

package com.freeflying.thread.communication; /** * sleep方法同步 * @ClassName: WaitReleaseLock * @Description: * @au

原创 生成樹形菜單-通過兩個map集合

1.數據庫sql語句 create table company( company_id int not null auto_increment, p

原创 java8中的日期時間處理類

package com.freeOfFlying.java8.date; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.Loc