freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

peergine編程手冊-全文預覽

2025-07-20 08:26 上一頁面

下一頁面
  

【正文】 建立通話,一端發(fā)起請求之后,另一端可以選擇接受或拒絕,只有對端選擇接受后通話才建立。開始傳輸時,可以通過Offset和Size參數(shù)指定只傳輸文件的一個片段。參考“PG_CLASS_Data類”章節(jié)5. 使用文件傳輸類(PG_CLASS_File)1) 兩點文件傳輸文件傳輸類提供了兩點之間傳輸文件的功能。通過調(diào)用PG_METH_GROUP_Master方法向通信組內(nèi)的成員公告主成員的名稱,成員接收到公告后,通過返回應答的錯誤碼確認是否接受該主成員公告。以此類推,每個成員節(jié)點上的Group0都復制到了離該節(jié)點最近的6個成員。鄰近范圍的大小缺省為6,可以通過PG_METH_COMMON_SetOption方法的修改。3) 鄰近成員控制在對等通信場景中,有時候一個通信組內(nèi)的成員會很多,但一個節(jié)點只希望與離它最近的幾個節(jié)點交互。如果節(jié)點NodeB上的Group0取消關聯(lián)節(jié)點NodeA或被刪除,則節(jié)點NodeB就離開了節(jié)點NodeA上的Group0的成員列表,同時節(jié)點NodeA上的Group0會通知節(jié)點NodeC上的Group0把節(jié)點NodeB從其成員列表中刪除。(2) 一個通信組對象引用了另一個通信組對象的成員時,它自身的節(jié)點也同時加入了被引用的通信組對象的成員列表。當然節(jié)點NodeB和NodeC上的Group0都包含了對方節(jié)點作為成員后,它們之間也會建立同步。3. 使用通信組類(PG_CLASS_Group)1) 手動控制成員通過調(diào)用通信組類的PG_METH_GROUP_Modify方法來手動添加、刪除通信組的成員,必須啟用PG_ADD_GROUP_Modify選項后才允許調(diào)用該方法。4) 遠程過程調(diào)用調(diào)用節(jié)點類的PG_METH_PEER_Call方法可進行兩個節(jié)點之間的遠程過程調(diào)用,該方法的請求參數(shù)和應答參數(shù)的內(nèi)容由應用程序定義,控件透明傳輸。普通節(jié)點通過調(diào)用登錄服務器節(jié)點對象的PG_METH_PEER_Login和PG_METH_PEER_Logout方法來請求登錄和注銷。在控件初始化時,把Node配置項的Type參數(shù)賦值為1,則該節(jié)點就是登錄服務器節(jié)點。對此,Peergine提供了自動交換節(jié)點網(wǎng)絡地址的方法,請看參考下文的“登錄、注銷和地址解析”章節(jié)。function pgOnExtRequest(sObj, uMeth, sData, uHandle, sPeer) { if (sObj == sLocalName amp。(sRemoteName, 37, sInEle, “SetAddr”)。(0)。 = “Name=” + sLocalName + “。2) 簡單的兩點直接通信為了便于開始理解節(jié)點對象,我們編寫一個兩點直接通信的程序。(0)。 = “Name= PGServer。在實際使用中不需要直接創(chuàng)建節(jié)點自身對象,而是在控件初始化或調(diào)用登錄方法時,有系統(tǒng)自動創(chuàng)建。 = pgOnReply。 = Name=PGServer。PG_CLASS_Audio:8。代碼示例(JavaScript): = Type=1。靜態(tài)節(jié)點對象不會從登錄服務器獲取地址,需要調(diào)用PG_METH_PEER_SetAddr方法來設置地址。所以,動態(tài)節(jié)點對象一般都由系統(tǒng)自動創(chuàng)建,無須直接調(diào)用控件的API創(chuàng)建。注:如果使用Peergine之外的途徑移入/移出文件,則 Peergine將無法保證其安全性。(2) Src指定了文件路徑且Dst為空,則Src指定的文件必須在沙盒目錄內(nèi)。缺省情況下,沙盒目錄是當前用戶的“Documents”目錄下的“Peergine”目錄??刂埔?guī)則如下:(1) 所有涉及到網(wǎng)絡傳輸?shù)奈募L問都限制在沙盒目錄內(nèi)。請參考“控件的命令列表”章節(jié)??丶峁┝溯o助函數(shù)utilGetWndRect()來獲取控件窗口的尺寸和句柄,以便用來初始化視頻或白板窗口。請參考“控件的OML解析器函數(shù)”和“對象標記語言(OML)”章節(jié)。但運行在Windows Script Host中時,線程沒有消息循環(huán),無法完成交互消息的投遞。這樣就完成了一次方法的調(diào)用。需要ObjectRequest()、ObjectExtReply()、OnExtRequest()和OnReply()這4 個函數(shù)配合才可以完成一次方法的調(diào)用。通信對象在創(chuàng)建之后或用ObjectSetGroup()修改關聯(lián)通信組之后會自動與通信范圍內(nèi)的其他節(jié)點上的同名通信對象進行同步。用ObjectAdd()函數(shù)創(chuàng)建通信對象,用ObjectDelete()刪除通信對象。 = pgOnReply。 = Name=PGServer。PG_CLASS_File:64。創(chuàng)建控件實例后,通過給控件的配置屬性變量賦值進行配置,然后調(diào)用Start()函數(shù)啟動控件的節(jié)點功能。如果要使用IPV4和IPV6的轉(zhuǎn)換功能,該網(wǎng)絡主機必須具備IPV4和IPV6雙棧,且IPV4和IPV6網(wǎng)絡都能到達。 } (Name2){ //偵聽端口2 (Type){1} //隧道類型:HTTP隧道 (AddrListen){0:0:0::8888:0} //TCP偵聽地址/端口(這是個IPV4地址) (AddrUDP4){0:0:0::0:0} //轉(zhuǎn)換成UDP后的IPV4地址,端口自動分配。中繼服務器的配置文件的結(jié)構(gòu)如下:(MaxThread){16} //最大的轉(zhuǎn)發(fā)線程數(shù)目(每個線程最多允許32條TCP連接)。2. 配置運行。UDP通信受限的節(jié)點能通過隧道連接到中繼服務器,然后轉(zhuǎn)換成UDP通信再跟其他節(jié)點互通。例如,這些節(jié)點位于防火墻的后面,而防火墻把UDP端口全部封鎖。3. Android平臺:安裝包:,包含了NPAPI插件和JNI插件的可執(zhí)行文件,直接執(zhí)行安裝之后可以使用。2. Linux平臺:NPAPI插件:,復制到/usr/lib/mozilla/plugins目錄后就可以在瀏覽器中調(diào)用Peergine的API。NPAPI插件:,復制到Chrome、Firefox和Safari的plugins目錄后就可以在瀏覽器中調(diào)用Peergine的API。3) 文件摘要的格式Peergine 系統(tǒng)中使用的文件摘要格式為:SHA256算法生成,Base64編碼。IPV4的地址端口樣例:0:0:0:7F000001:80:0或0:0:0::80:0。應用程序pgAtx控件()()發(fā)送請求觸發(fā)上報節(jié)點A圖9. 交互方式67) 方式7:本端應用程序調(diào)用本端控件的方法但沒有輸出。應用程序pgAtx控件pgAtx控件應用程序()()網(wǎng)絡接收請求發(fā)送應答節(jié)點A節(jié)點B圖6. 交互方式32) 方式4:本端應用程序發(fā)送請求。應用程序pgAtx控件pgAtx控件應用程序()()()()網(wǎng)絡發(fā)送請求接收請求發(fā)送應答接收應答節(jié)點A節(jié)點B圖4. 交互方式13) 方式2:本端應用程序發(fā)送請求、接收應答。但并不是所有的方法的調(diào)用都需要4個函數(shù)的交互過程,有些方法只需要其中1個或2個函數(shù)的交互。4. 控件與應用程序的交互方式1) 系統(tǒng)概述Peergine中間件的系統(tǒng)框圖如下,它位于應用程序和網(wǎng)絡層的中間。對于其它業(yè)務類型的通信對象,例如消息傳輸對象、文件傳輸對象,它們沒有控制通信范圍的機制,則可以通過關聯(lián)節(jié)點對象或通信組對象來控制通信范圍。對于通信組對象,它的通信范圍由它所包含的組成員決定。在Peergine系統(tǒng)中有兩種可以用來確定通信范圍的通信對象,它們分別是節(jié)點對象和通信組對象。如下圖,有NodeA、NodeB、NodeC三個節(jié)點,它們的自身對象分別為 NodeA、NodeB、NodeC。在不同的通信節(jié)點上就可以存在名稱相同的通信對象,我們把這樣的一套通信對象稱為“同名通信對象”。在系統(tǒng)中不同的通信業(yè)務類型表述為相對應的通信對象類,例如消息傳輸類、音頻傳輸類、視頻傳輸類等,而每一個通信對象實例表示一個通信會話。比如,多個人在一個聊天室里交談、多個人在頂一個帖子、多個人在觀看一個視頻等等。且也已經(jīng)有了相應成熟的網(wǎng)絡編程模型,例如Socket API。5) 多種OS和運行環(huán)境Peergine封裝成了ActiveX控件、NPAPI插件和JNI插件等接口形式,可以運行在Internet Explorer、Chrome、Firefox和Safari瀏覽器中,以及Windows Script Host和Java Runtime Enviroment運行環(huán)境中。支持對通信數(shù)據(jù)進行加密,加密的密鑰自動協(xié)商生成,無需配置。參考“配置和運行中繼服務器”章節(jié)。支持TCP、HTTP和WebSocket三種協(xié)議的隧道,以適應多種通信環(huán)境。支持媒體流錄制。參考“使用數(shù)據(jù)表傳輸類”章節(jié)。順序傳輸模式,分散傳輸模式,可設置文件傳輸?shù)臄?shù)據(jù)塊大小,實時將獲取到的文件數(shù)據(jù)轉(zhuǎn)發(fā)到本地HTTP服務器上以便使用播放器或瀏覽器來播放文件。參考“使用視頻傳輸類”章節(jié)。支持會議發(fā)言控制,實時音量變化顯示,音頻錄制。文件傳輸類:兩個節(jié)點之間的文件傳輸。通信組類:提供對象的多點通信范圍控制。參考“基于對象的多點通信會話”章節(jié)。注:本編程手冊以ActiveX控件(pgATX)的編程接口為例,說明Peergine中間件的使用方法。 Peergine編程手冊Peergine編程手冊V 201205 介紹1. 關于PeerginePeergine是一個功能強大的對等通信中間件,用C/C++編程語言開發(fā)。旨在能方便地構(gòu)建具有豐富的對等通信功能的Web應用,包括瀏覽器端和服務器端。即便是對網(wǎng)絡通信知識缺乏了解的編程人員,也能夠構(gòu)建出功能強大的對等通信應用。參考“使用節(jié)點類”章節(jié)。參考“使用消息傳輸類”章節(jié)。支持兩點對話模式和多點會議模式。支持會議模式中視頻的加入/離開,視頻顯示窗口的調(diào)整和轉(zhuǎn)移,抓拍視頻照片,視頻錄制。文件分塊共享類:類似BitTorrent和eMule,多個節(jié)點以分塊的方式對等傳輸文件。支持文件傳輸模式,每個文件對應到數(shù)據(jù)表的一條記錄進行傳輸,實現(xiàn)文件的批量同步。支持媒體源的快速切換,丟幀重傳,自動選擇網(wǎng)絡狀況好的節(jié)點進行中繼轉(zhuǎn)發(fā)。對于UDP協(xié)議通信受限的節(jié)點,通過承載在TCP之上的隧道連接到中繼服務器,然后轉(zhuǎn)換成UDP協(xié)議通信。各種協(xié)議之間的轉(zhuǎn)換互通,由Socket適配層自動適應,對上層通信對象透明。實現(xiàn)QOS機制,每個節(jié)點都有4個優(yōu)先級隊列,分別對消息/信令、音頻、視頻和文件4種流量進行優(yōu)先級調(diào)度,保證高優(yōu)先級流量的服務質(zhì)量。請參考“控件的命令列表”章節(jié)。各種OS和運行環(huán)境的支持情況及路標如下表:運行環(huán)境\OSWindowsLinuxAndroidMac OS XiOSInternet Explorer√Chrome√√√2012Q22012Q2Firefox√√√2012Q22012Q2Safari√2012Q22012Q2Java (JNI)√√√3. 基于對象的多點通信會話1) 概念在以往的網(wǎng)絡編程方法中,例如,TCP連接、SIP會話等,通信會話一般指兩點之間協(xié)商建立起來的通信交互。我們能否找到一種方法,讓對等通信編程也變得直觀、簡單呢?其實,人們使用網(wǎng)絡的行為可以簡單表達為一句話:“多個人通過網(wǎng)絡連接在一起做同一件事”。Peergine就是這種以通信對象為基礎的對等通信系統(tǒng)。在每個通信節(jié)點上除了節(jié)點自身對象以外,還可以創(chuàng)建多個各種類型的通信對象,這些通信對象的名稱必須在本節(jié)點范圍內(nèi)唯一。同名通信對象建立通信會話的過程,稱為“通信對象的同步”。節(jié)點NodeA節(jié)點NodeB節(jié)點NodeC自身對象NodeA節(jié)點對象NodeB節(jié)點對象NodeC自身對象NodeB節(jié)點對象NodeC節(jié)點對象NodeA自身對象NodeC節(jié)點對象NodeA節(jié)點對象NodeB通信組對象Group0成員NodeA成員NodeB成員NodeC通信組對象Group0成員NodeA成員NodeB成員NodeC通信組對象Group0成員NodeA成員NodeB成員NodeC消息傳輸對象Data0關聯(lián)Group0消息傳輸對象Data0關聯(lián)Group0消息傳輸對象Data0關聯(lián)Group0圖2. 同名通信對象機制3) 通信范圍控制當很多節(jié)點上都有名稱相同的通信對象時,如何確定哪些節(jié)點上的同名通信對象才能組成一個多點通信會話呢?這就涉及到同名通信對象的通信范圍問題。使用節(jié)點對象可以建立兩點之間的通信會話。使用通信組對象可以建立多點之間的通信會話。參考“使用通信組類”章節(jié)。分別為發(fā)送請求ObjectRequest()、接收請求OnExtRequest()、發(fā)送應答ObjectExtReply()和接收應答OnReply(),其中OnExtRequest()和OnReply()是回調(diào)函數(shù),需要在控件初始化時注冊才能使用。對端應用程序接收請求、發(fā)送應答。對端應用程序接收請求、發(fā)送應答。應用程序pgAtx控件()()發(fā)送請求接收應答節(jié)點A圖8. 交互方式56) 方式6:本端應用程序發(fā)送請求觸發(fā)本端控件上報事件給應用。此地址格式可以表示IPV4的地址端口和IPV6的地址端口。樣例:20111022,18:20:09。SDK的安裝使用說明1. Windows平臺:ActiveX控件:,使用regsvr32命令注冊后就可以在瀏覽器和WSH中調(diào)用Peergine的API。將其路徑添加到CLASSPATH環(huán)境變量中,就可以在Java應用程序中調(diào)用Peergine的API。將其路徑添加到
點擊復制文檔內(nèi)容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1