1 follower
後端工程師。
不定時張貼一些寫扣時的筆記,有時英文,有時中文。
前言 感謝 Arch Linux安裝教學,KDE Plasma桌面+中文輸入法 ,本篇的安裝步驟大部分來自於這他,尤其是硬碟分割。 在網路上找到不少教學都是有包含 GUI...
前言 問題起源於這個迴圈,有時,我們會需要倒著存取陣列的元素。 std::vector<int> xs(10); for (size_t i = 9; i >= 0; --i) { // ... xs[i] } 這一部份有個問題,就是這會是無窮迴圈。 一個保留 size_t...
在 Linux 系統下,我們可以透過 fcntl 來提供跨 Process 的 Read/Write Filelock,但是卻有一個小小的坑需要注意,那就是在同一個 Process 內,不可以跨 Thread 使用這個 Lock。 舉個例子,假設我們有一個 Process A,會定期地更新...
TL;DR 沒有 Side Effect 的無窮迴圈是未定義行為。 起源 Source: https://twitter.com/PR0GRAMMERHUM0R/status/1623366075357270019/photo/1 可以先猜猜這段 code 會有什麼輸出(x86_64 clang...
故事 gmtime_r 很坑。 會用到 gmtime_r 的多少是因為 gmtime 不是 thread-safe 的,但又需要 threading 來增加效率。 但假如使用者會很頻繁的呼叫他,那就可能要考慮其他函數。 為什麼? gmtime_r 的運作 gmtime_r 的功能是把 Unix...
前言 在 Go 1.17 升到 Go 1.18/1.19 時,對於那些會用到 http.Client 的 code ,有一個關鍵性的變動,那就是 TLS 的 version 預設值的改變。 通常來說,這個變動對於呼叫到比較新的 API 的程式都不太會有影響,但為了避免意外,Server 是否支援...