第四章 Sysrepo連線與會話

2022-06-17 10:48:13 字數 833 閱讀 2634

摘自:

寫在前面,最近忙於工作與上王者。王者已上,已無它望,哈哈,以後還是保持盡量保證每週一更。

1 、何為連線與會話

開發者要開始使用sysrepo,首先必須建立乙個連線。乙個應用程式或者程序即使可以允許建立多個連線,但是一般情況只會建立乙個連線。sysrepo允許同時建立多個連線。簡單的舉個例子,通常情況下,sysrepo-plugin在init_cb初始時就會建立乙個連線,這是乙個由sysrepo-plugin與sysrepo所建立的連線,只要發生異常不釋放,該連線會一直存在整個sysrepo-plugin程序的生命週期,此外,例如使用者通過sysrepoctl -l |grep ***看某個yang模型是否已經載入,sysrepoctl應用程式也建立乙個短連線,該連線在命令執行結束後立即釋放,假如是極端修改,不釋放該連線,再使用sysrepocfg來配置runing庫,這時有3個與sysrepo連線。並且3個連線不干擾,也不影響sysrepo的正常工作。

而會話,是建立在連線之下,乙個連線下可以建立多個會話,每個會話都有乙個唯一的標識,每個會話總是可以選擇乙個可隨時更改的資料庫,使用些會話的所有api呼叫都將在該資料庫下操作。

連線與會話的關係如下所示,可能不是特別準備,但大概就是這個意思。

圖1 連線與會話關係

2、核心資料結構

connection的資料結構主要是儲存sysrepo連線與libyang的上下文,該連線所建立的共享記憶體結構。資料結構定義如下

接下來會分析sysrepo的共享記憶體機制.shm機制是新sysrepo的核心,需要好好說道說道.

第四章 連線

c陷阱與缺陷 學習筆記形參實參staticposts 4.4 形參 實參與返回值 4.5 檢查外部型別 4.6 標頭檔案 總結在c語言中,乙個重要的思想就是分別編譯,即若干個源程式可以在不同的時候單獨進行編譯,然後在恰當的時候整合到一起。但是聯結器一般是與c編譯器分離的,聯結器如何做到把若干個c源程...

《如何連線網路》第四章

首先,我們在上一章的傳輸技術夠用了嗎?不夠的,因為如果遠距離傳輸還用雙絞線什麼的,根本沒法正常使用。所以會有遠距離傳輸技術,本章涉及這些。另一點,遠距離傳輸的成本很大的,所以一般有運營商負責,那運營商在網路傳輸中做了什麼,本章也講了這個。為了方便理解,我用我的理解講這一段內容,內容會很模糊,具體的知...

第四章 繼承

一 為什麼要繼承 在物件導向中我們將具有很多重複內容的類中的內容提取出來,寫成乙個單獨的類 其他類只需要繼承就能取得這些功能,同時可以在自己類中寫入獨特的自定義方法 二 繼承語法 inte ce circle nsobject 繼承是在介面中定義的 冒號後的類名是要整合的類,nsobject 是co...