package main import ( _ "github.com/go-sql-driver/mysql" "go.hoteas.com/hotime" "time" //"fmt" ) func main() { a:=hotime.Map{} a.Put("x",1) for i:=0;i<30 ;i++ { go func() { for j:=0;j<30 ;j++ { if j/2==0{ hotime.SafeMutex("test", func() interface{} { a.Put("x","1") return nil }) }else { //fmt.Println(a.GetInt64("x")) a.Delete("x") } } }() } time.Sleep(time.Second*5) //appIns := hotime.Application{} //i := 0 // //appIns.SetConnectListener(func(context *hotime.Context) bool { // fmt.Println(i) // i++ // //this.HandlerStr = "/test.html" // return true //}) // ////手动模式, //appIns.SetConfig() //appIns.SetConnectDB(func(err ...*hotime.Error) *sql.DB { // query := appIns.Config.GetString("dbUser") + ":" + appIns.Config.GetString("dbPwd") + // "@tcp(" + appIns.Config.GetString("dbHost") + ":" + appIns.Config.GetString("dbPort") + ")/" + appIns.Config.GetString("dbName") + "?charset=utf8" // DB, e := sql.Open("mysql", query) // if e != nil && len(err) != 0 { // err[0].SetError(e) // } // return DB //}) //appIns.SetSession(hotime.CacheIns(&hotime.CacheMemory{}), hotime.CacheIns(&hotime.CacheDb{Db: &appIns.Db, Time: appIns.Config.GetInt64("cacheTime")})) //appIns.SetCache(hotime.CacheIns(&hotime.CacheMemory{})) // ////快捷模式 ////appIns.SetDefault(func(err ...*hotime.Error) *sql.DB { //// query := appIns.Config.GetString("dbUser") + ":" + appIns.Config.GetString("dbPwd") + //// "@tcp(" + appIns.Config.GetString("dbHost") + ":" + appIns.Config.GetString("dbPort") + ")/" + appIns.Config.GetString("dbName") + "?charset=utf8" //// DB, e := sql.Open("mysql", query) //// if e != nil && len(err) != 0 { //// err[0].SetError(e) //// } //// return DB ////}) // //appIns.Run(hotime.Router{ // "app": hotime.Proj{ // "index": hotime.Ctr{ // "test": func(this *hotime.Context) { // fmt.Println(this.Db.GetTag()) // x:=this.Db.Action(func(db hotime.HoTimeDB) bool { // // db.Insert("user",hotime.Map{"unickname":"dasdas"}) // // return true // }) // this.Display(5, x) // }, // "websocket": func(this *hotime.Context) { // hdler := websocket.Handler(func(ws *websocket.Conn) { // for true { // msg := make([]byte, 5120) // n, err := ws.Read(msg) // // if err != nil { // return // } // fmt.Printf("Receive: %s\n", msg[:n]) // // send_msg := "[" + string(msg[:n]) + "]" // m, err := ws.Write([]byte(send_msg)) // if err != nil { // return // } // fmt.Printf("Send: %s\n", msg[:m]) // } // }) // hdler.ServeHTTP(this.Resp, this.Req) // }, // }, // }, //}) }