iOS Socket開發總結 筆記

2021-08-03 18:42:32 字數 1848 閱讀 1306

//

聯絡人

:

石虎

暱稱

:

嗡嘛呢叭咪哄

一、

osi、

tcp/ip

參考模型

ios參考模型七層的作用

同一節點相鄰層次間通過介面通訊

各節點相同層次通過協議實現

tcp/ip

參考模型簡化

使用埠號的範圍

ping

的回環位址

(網上沒問題)、

ping ip(

網路沒問題

),網域名稱、

dns

本地網域名稱快取

/etc/hosts (

畫圖演示

dns hosts)

tcp/udp

url ftp:http 演示

telnet

解決工作中常見問題

三、

socket

聊天

啟動聊天伺服器

python chatserver.py

鍵盤動畫

[self

.view layoutifneeded];

連線到主機,分配輸入輸出流空間

建立長連線

cfstreamcreatepairwithsockettohost

將語言的輸入輸出流轉成

oc物件

設定代表監聽輸入輸出流的狀態

新增到主執行迴圈,否理**不工作

[_inputstream scheduleinrunloop:[nsrunloop mainrunloop] formode:nsdefaultrunloopmode];

開啟輸入輸出流

登入傳送

nsstring *loginstr = [nsstring stringwithformat:

@"iam:zhangsan"];

nsdata *data = [loginstr datausingencoding:nsutf8stringencoding];

[_outputstream write:data.bytes maxlength:data.length];

資料讀取 //

建立個緩衝區來儲存讀取到的資料

uint8_t buffer[

1024];

//返回實際讀取的資料長度

nsinteger len = [_inputstream read:buffer maxlength:

sizeof

(buffer

//有資料 if

(len > 0)

斷開連線要關閉輸入輸出流並移除主執行迴圈 回顧

netstat -an -p tcp

檢視所有開放的埠檢視連線狀態

謝謝!!!

ListView開發總結筆記

ps 這個東西是早前時段寫的,參考價值不大,扔了又覺得可惜.所以還是在次存檔.listview優化的三種情況和方式 第一種情況 常採用viewholder 在getview的時候都會返回乙個convertview 為了避免每次 convertview layoutinflater.from this...

VUE 開發總結筆記

vue開發過程中遇到的一些問題和總結,都是入門時可能會遇到的問題。當我們去看vue文件的時候,發現如果在例項建立之後新增新的屬性到例項上,它不會觸發檢視更新。比如我們我們開始建立了乙個物件例項,在例項建立之後為其增加新的屬性,我們發現這個屬性不能生效,此時需要使用this.set 方法。more t...

敏捷開發學習筆記 總結

我好像還沒有完全踐行過敏捷開發。不過這段時間一通學習下來,結合以往的一些經歷,認為敏捷的精髓在於多職能團隊和迭代思想。1 多職能團隊 意味著團隊成員參與了整個專案的絕大部分工作 任務領用 需求分析 設計及開發 測試 評審。比如,需求分析,以往都是由乙個所謂系統分析員來寫 而在敏捷裡,是由產品經理在計...