原创 Linux 下 select() 實現 socket 多路複用IO模型

通常情況下 recv() 函數是阻塞的,發起接收請求就會一直等待,直到數據返回。當recv()阻塞時,當前線程就會進入休眠狀態,這意味着線程不能做其它事情。舉個例子,當線程想退出時,就只能等數據返回,線程被喚醒纔有機會執行代碼。 使用 s

原创 早期程序界面太醜陋?一招使其具有win10風格

這是vc6.0編寫的一個網絡調試工具,界面放到現在慘不忍睹,與win10風格格格不入。 複製下面的xml代碼,保存成文件到“TCP&UDP測試工具”所在目錄,例如 style.manifest <?xml version="1.0"

原创 bmp 格式轉 yuv420p 格式

最近研究 yuv 格式,網上搜索了很多資料,大部分代碼都不能正常使用。這些代碼對偶數寬高的圖像都能運行良好,但是卻對奇數寬高的圖像並沒有做相應的處理,導致運行時,數組訪問越界或生成的yuv圖像不能顯示等問題。 經過查看 libyuv 源碼