//newredispool:建立redis連線池
func
newredispool()
*redis.pool
//2、訪問認證
//if _, err =c.do("auth",redispass);err!=nil
return c,
nil}
,//定時檢查redis是否出狀況
testonborrow:
func
(conn redis.conn, t time.time)
error
_,err := conn.do(
"ping"
)return err
},}}
//初始化redis連線池
func
init()
//對外暴露連線池
func
redispool()
*redis.pool操作具體資料
rc := models.
redispool()
.get()
//注意close()
defer rc.
close()
beego.
info
(redis.poolstats
)//預設不選庫操作的是0
rc.do(
"select",2
)_, err :=rc.do(
"set"
,"wohao"
,234234
)// 寫入值10s後過期
_, err = c.do(
"set"
,"password"
,"123456"
,"ex"
,"10"
)if err !=
nil
執行緒池使用
1.定義乙個執行緒池,用來執行實現callable介面的任務類.當阻塞佇列新添乙個任務類時,將while迴圈新增設定乙個變數startexcute,當阻塞佇列新添第乙個任務時,將startexcute設定為true,並呼叫excutetaskcall方法,使用執行緒池執行阻塞佇列的任務。當阻塞隊列為...
執行緒池使用
一 執行緒池的構造器 public threadpoolexecutor int corepoolsize,int maximumpoolsize,long keepalivetime,timeunit unit,blockingqueueworkqueue,threadfactory thread...
使用執行緒和執行緒池
1 new thread的弊端 執行乙個非同步任務你還只是如下new thread嗎?new thread new runnable start 那你就out太多了,new thread的弊端如下 a.每次new thread新建物件效能差。b.執行緒缺乏統一管理,可能無限制新建執行緒,相互之間競爭...