executorservice es = executors.newfixedthreadpool(2);
//帶執行緒池的非同步介面
cc.create().inbackground((client,event)->
system.out.println(thread.currentthread().getname()+","+event);
},es).forpath("/abc");
//不帶執行緒池的非同步介面
cc.delete().inbackground((client,event)->
system.out.println(thread.currentthread().getname()+","+event);
}).forpath("/abc");
thread.sleep(integer.max_value);
1.inbackground() 該方法就是新增乙個非同步的**方法,引數是backgroundcallback介面,是乙個函式式介面。
2.backgroundcallback的介面引數為client(當前客戶端例項)及event(服務端事件)
3.事件型別,curatoreventtype,
包含如下資訊
type對應的就是操作型別,比如delete對應的delete(),create對應create()等,resultcode是響應碼,0代表成功
4.執行緒池es的作用,通過名稱可以看到,預設情況下都是使用main-eventthread執行緒來序列執行,如果耗時較長會有影響,可以通過定製執行緒池來緩解這種情況。
同步呼叫與非同步呼叫
一 什麼是同步呼叫與非同步呼叫 定義 1 同步就是整個處理過程順序執行,當各個過程都執行完畢,並返回結果。2 非同步呼叫則是只是傳送了呼叫的指令,呼叫者無需等待被呼叫的方法完全執行完畢 而是繼續執行下面的流程。例如,在某個呼叫中,需要順序呼叫 a,b,c三個過程方法 如他們都是同步呼叫,則需要將他們...
JQ 非同步呼叫
請求 test.php 網頁,忽略返回值。jquery 程式 get test.php 請求 test.php 網頁,傳送2個引數,忽略返回值。jquery 程式 get test.php 顯示 test.php 返回值 html 或 xml,取決於返回值 jquery 程式 get test.ph...
html 非同步呼叫
我們的例項在 open 的第三個引數中使用了 true 該引數規定請求是否非同步處理。true 表示指令碼會在 send 方法之後繼續執行,而不等待來自伺服器的響應。onreadystatechange 事件使 複雜化了。但是這是在沒有得到伺服器響應的情況下,防止 停止的最安全的方法。通過把該引數設...