成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

看我打臉Message Pack

3fuyu / 1126人閱讀

摘要:然后看出來(lái)的文件,恩,浪費(fèi)我的時(shí)間然后不死心結(jié)果還是次恩,真是雞肋啊

總之網(wǎng)站上說(shuō)得很好啦:http://msgpack.org/,又快,生成的文件又小等等,總之就是很牛逼的救世主咯

因?yàn)槿淌懿涣?pickle 的速度,所以嘗試切換一下。

import pickle
import msgpack
import gc

a = list(range(10000*10000))

def dump1():
    with open("1", "wb") as f:
        pickle.dump(a, f)

def dump2():
    with open("2", "wb") as f:
        msgpack.dump(a, f)

def dump3():
    gc.disable()
    with open("2", "wb") as f:
        msgpack.dump(a, f)
    gc.enable()

然后測(cè)速,有 dump3 的原因是官方網(wǎng)站說(shuō)關(guān)閉gc有奇效:

CPython"s GC starts when growing allocated object. This means unpacking may cause useless GC. You can use gc.disable() when unpacking large message.

恩,先看測(cè)試結(jié)果(測(cè)試了10次):

dump1: 1 loop, best of 3: 3.98 s per loop
dump2: 1 loop, best of 10: 5.22 s per loop
dump3: 1 loop, best of 10: 5.13 s per loop

恩,徹底打臉了。關(guān)閉gc也沒(méi)有奇效。

然后看dump出來(lái)的文件 (=,=b):

-rw-r--r--  1 chendx  staff   477M  8 11 18:43 1
-rw-r--r--  1 chendx  staff   477M  8 11 18:49 2

恩,浪費(fèi)我的時(shí)間……


然后不死心

def load1():
    with open("1", "rb") as f:
        pickle.load(f)

def load2():
    with open("2", "rb") as f:
        msgpack.load(f)

結(jié)果(還是10次)

load1: 1 loop, best of 10: 6.78 s per loop
load2: 1 loop, best of 10: 5.91 s per loop

恩,真是雞肋啊

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/45488.html

相關(guān)文章

  • [譯][Tkinter 教程11] 對(duì)話框和消息框

    摘要:已獲原作者授權(quán)原系列地址簡(jiǎn)介提供了一系列的對(duì)話框可以用來(lái)顯示文本消息提示警告信息和錯(cuò)誤信息選擇文件或顏色其他一些簡(jiǎn)單的對(duì)話框還可以請(qǐng)求用戶輸入文本整數(shù)或數(shù)字下面是一個(gè)典型的對(duì)話框使用場(chǎng)景在應(yīng)用程序中經(jīng)常會(huì)有退出按鈕如下點(diǎn)擊按鈕會(huì)彈出一個(gè)確認(rèn) 已獲原作者授權(quán). 原系列地址: Python Tkinter 簡(jiǎn)介 Tkinter 提供了一系列的對(duì)話框, 可以用來(lái)顯示文本消息, 提示警告信息...

    Anchorer 評(píng)論0 收藏0
  • 你不知道WebSocket嗎?

    摘要:什么是是一種在單個(gè)連接上進(jìn)行全雙工通信的協(xié)議。短輪詢配段代碼,靜態(tài)服務(wù)中間件用來(lái)返回靜態(tài)文件當(dāng)前價(jià)格是元獲取最新價(jià)格接口客戶端不停的發(fā)送請(qǐng)求,去服務(wù)端獲取最新價(jià)格。它通過(guò)連接到一個(gè)服務(wù)器,以格式接收事件不關(guān)閉連接。 什么是WebSocket? WebSocket是一種在單個(gè)TCP連接上進(jìn)行全雙工通信的協(xié)議。這里我們發(fā)現(xiàn)了一個(gè)有趣的詞:全雙工,那我們就來(lái)簡(jiǎn)單了解下通信方式有哪些! 單工 ...

    techstay 評(píng)論0 收藏0
  • 你不知道WebSocket嗎?

    摘要:什么是是一種在單個(gè)連接上進(jìn)行全雙工通信的協(xié)議。短輪詢配段代碼,靜態(tài)服務(wù)中間件用來(lái)返回靜態(tài)文件當(dāng)前價(jià)格是元獲取最新價(jià)格接口客戶端不停的發(fā)送請(qǐng)求,去服務(wù)端獲取最新價(jià)格。它通過(guò)連接到一個(gè)服務(wù)器,以格式接收事件不關(guān)閉連接。 什么是WebSocket? WebSocket是一種在單個(gè)TCP連接上進(jìn)行全雙工通信的協(xié)議。這里我們發(fā)現(xiàn)了一個(gè)有趣的詞:全雙工,那我們就來(lái)簡(jiǎn)單了解下通信方式有哪些! 單工 ...

    remcarpediem 評(píng)論0 收藏0
  • 在tornado中使用tcpserver和tcpclient實(shí)現(xiàn)echo服務(wù)器

    摘要:本文主要介紹了在框架中使用實(shí)現(xiàn)簡(jiǎn)單服務(wù)器的過(guò)程。在網(wǎng)絡(luò)通信中,需要發(fā)送二進(jìn)制流數(shù)據(jù)函數(shù)負(fù)責(zé)數(shù)據(jù)組包,即將數(shù)據(jù)按照規(guī)定的傳輸協(xié)議組合起來(lái)函數(shù)負(fù)責(zé)數(shù)據(jù)拆包,即按照規(guī)定的協(xié)議將數(shù)據(jù)拆分開來(lái)。不多說(shuō),具體實(shí)現(xiàn)代碼咱們來(lái)看一下。 本文主要介紹了在tornado框架中,使用tcpserver,tcpclient,struct.pack(),struct.unpack實(shí)現(xiàn)簡(jiǎn)單echo服務(wù)器的過(guò)程。 ...

    liukai90 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<