RETURN與SETON LR結束程式區別

2021-06-01 21:29:42 字數 504 閱讀 9292

return與seton lr結束程式區別

return結束不會強迫記憶體中資料寫入磁碟, 

而seton lr結束時會強迫記憶體中的資料寫入磁碟.

比如乙個輸出檔案, 400預設方式是block方式輸出,即當資料記錄數滿乙個block塊時才會把這一塊的記錄寫入到時磁碟. 假若當用return結束程式時,最後乙個block塊並沒有滿, 那麼這最後乙個block的記錄就不會立即寫入磁碟.  假若隨後有其他作業需要用到該檔案, 那麼這個不完整的資料檔案就有可能讓這個作業執行出現錯誤. 

每個pf檔案屬性後面都有乙個屬性叫

records to force a write, 

在這裡面也可以設定記錄條數,當改變記錄條數達到這個數時,會強制寫入磁碟.  假若這裡設定條數為1, 那麼每次改變或增加一條記錄,就會立即寫入磁碟. 但這樣就增加了i/o次數, block輸出方式也失去了意義. 但可以確保有return結束的程式不會引起其他程式因資料原因出錯.

因此,使用return結束程式一定要小心.

sockaddr與sockaddr in結構體簡介

struct sockaddr sa family是位址家族,一般都是 af 的形式。好像通常大多用的是都是af inet。sa data是14位元組協議位址。此資料結構用做bind connect recvfrom sendto等函式的引數,指明位址資訊。但一般程式設計中並不直接針對此資料結構操作...

sockaddr與sockaddr in結構體簡介

struct sockaddr sa family是位址家族,一般都是 af 的形式。好像通常大多用的是都是af inet。sa data是14位元組協議位址。此資料結構用做bind connect recvfrom sendto等函式的引數,指明位址資訊。但一般程式設計中並不直接針對此資料結構操作...

sockaddr與sockaddr in結構體簡介

struct sockaddr sa family是位址家族,一般都是 af 的形式。好像通常大多用的是都是af inet。sa data是14位元組協議位址。此資料結構用做bind connect recvfrom sendto等函式的引數,指明位址資訊。但一般程式設計中並不直接針對此資料結構操作...