LearnHouse

Archive for the '程式&軟體' Category

[轉]linux ipc——shared memory

來源:http://www.rosoo.net/a/201307/16703.html

1、概念
共用記憶體:共用記憶體是進程間通信中最簡單的方式之一。共用記憶體允許兩個或更多進程訪問同一塊記憶體,就如同 malloc() 函數向不同進程返回了指向同一個實體記憶體區域的指標。當一個進程改變了這塊位址中的內容的時候,其它進程都會察覺到這個更改。

2、用途
. 共用記憶體允許兩個或多個進程共用一給定的存儲區,因為資料不需要來回複製,所以是最快的一種進程間通信機制。共用記憶體可以通過mmap()映射普通檔 (特殊情況下還可以採用匿名映射)機制實現,也可以通過系統V共用記憶體機制實現。應用介面和原理很簡單,內部機制複雜。為了實現更安全通信,往往還與信號 燈等同步機制共同使用

共用記憶體涉及到了存儲管理以及檔案系統等方面的知識,深入理解其內部機制有一定的難度,關鍵還要緊緊抓住內核使用的重要資料結構。系統V共用內 存是以檔的形式組織在特殊檔案系統shm中的。通過shmget可以創建或獲得共用記憶體的識別碼。取得共用記憶體識別碼後,要通過shmat將這個記憶體區 映射到本進程的虛擬位址空間
Read more...

posted by admin in 程式&軟體 and have No Comments

在Mac OS X上用Homebrew安裝ffmpeg和ffplay

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

安裝Homebrew:

brew info ffmpeg

查看ffmpeg安裝參數

brew install ffmpeg --with-fdk-aac --with-ffplay --with-freetype --with-libass --with-libquvi --with-libvorbis --with-libvpx --with-opus --with-x265

推薦安裝參數

brew update && brew upgrade ffmpeg

升級

brew install ffmpeg --with-ffplay

安裝ffplay
Read more...

posted by admin in 程式&軟體 and have No Comments

[iOS]UITextField常用設定

設置邊框樣式,只有設置了才會顯示邊框樣式
text.borderStyle = UITextBorderStyleRoundedRect;

typedef enum {
UITextBorderStyleNone,
UITextBorderStyleLine,
UITextBorderStyleBezel,
UITextBorderStyleRoundedRect
} UITextBorderStyle;

Read more...

posted by admin in 程式&軟體 and have No Comments

[iOS]Objective-C常用的Cocoa Touch API

dispatch_async

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
    // 耗时的操作
    dispatch_async(dispatch_get_main_queue(), ^{
        // 更新界面
    });
}); 

Read more...

posted by admin in 程式&軟體 and have No Comments

[轉]在使用 NSURLSession 時允許使用不安全的 SSL 連線

但很多時候你就會去做那些你不該做的事。比方說,你要寫一個 iOS 上的 Client,而 API Server 也還在開發中,接下來所有的 API 都會使用 HTTPS,但是還沒有花錢去買憑證,所以就先隨便產生了一個東西檔著先,而如果你使用 NSURLSession 試圖建立不安全的 HTTPS 連線的話,NSURLSession 就拒絕連線並且回傳 Error 物件。但是這種狀況下,你還是要先想辦法把連線建立起來,才有辦法在 Server 還在開發中的狀況下也寫點 Client Side 的程式。

Read more...

posted by admin in 程式&軟體 and have No Comments

[iOS]如何同時存在新舊兩套Xcode

身為iOS的開發人員很常會遇到iOS升級,Xcode也要跟著升級才能繼續開發

但很奇怪的是iOS每次升級,舊的APP就一定有問題,寫法都會有不相容新的SDK

勢必就要一一的去修正(真不懂為什麼Android就不用這麼麻煩)

有時候APP很趕著要上架,沒空一一修正和改寫不相容的錯誤

這時一個舊版的Xcode就很重要了,以下就教你如何安裝新舊兩套版本的Xcode

Read more...

posted by admin in 程式&軟體 and have No Comments