2011-02-25 33 views
3

我讀過的地方,使用刷新是必要的,以減少滯後。這是真的?使用pyserial刷新方法

我真的不確定使用它。請幫我理解它究竟做了什麼。

我已經檢查過pyserial文檔,但它沒有給我太多的信息。它所說的是:

flush() 沖洗文件類似的對象。這是一個不適用於這個類,可能會被覆蓋。

回答

3

您發送/寫入的信息可能會臨時存儲在緩衝區中,以便一次寫入更大的塊。所以,如果你這樣做:

f = open("test.txt","w") 
f.write("Hello") 

test.txt的仍然是空的,直到你f.flush()刷新緩衝區。在關閉文件之前,f.close()也會刷新緩衝區。

你得到的文件說這是一個「無操作」 - 一個無操作,這意味着如果你真的使用這個類,它什麼也不做。如果你使用的是一個子類,它可能會做一些事情。

+0

以下示例應該立即在f.write(「hello」)後使用f.flush?對不起,我對你的評論感到困惑,「如果你真的在使用那個班,它什麼都不做」。請詳細說明先生 – user571099

+0

@ user571099:您正在閱讀文檔的類的flush方法什麼也不做。如果你使用的是一個子類,它可能會產生影響。我建議你嘗試一下,看看它是否有所作爲。 –