亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

正則表達式引擎pcre使用JIT(即時編譯)后比不使用速度快了好幾倍(甚至10倍),為什么這么快?

正則表達式引擎pcre使用JIT(即時編譯)后比不使用速度快了好幾倍(甚至10倍),為什么這么快?

翻閱古今 2019-04-09 20:24:01
原來就不慢,為什么還能提高這么多,哪方面提的速呢?---把我下面的回復放上來,當作問題的補充---因為pcre本身也是用c寫的,并不是動態編譯。我現在不明白的是它如何動態編譯的,是分析二進制代碼然后再重新編譯?還是先運行一個虛擬機,再在上面跑,然后再分析?還有就是如何優化的?最近一直再看pcre的源碼(英文比較爛,看的慢,剛把未用JIT的代碼看了個大概),覺得原來的代碼并沒有多少冗余,如果再打開c編譯器的優化選項,覺得從代碼本身來看并沒有多大的優化余地,看了pcre的幫助文件也沒說清楚原理,只說表達式里包含循環或者表達式越長用JIT的優化效果越明顯,測試了確實如此。再就是對這個比較感興趣是也寫過一個正則表達式引擎,速度和未用jit加速的pcre差不多,而且能優化的手段基本都用了,所以非常好奇jit是怎么優化的。
查看完整描述

2 回答

  • 2 回答
  • 0 關注
  • 648 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號