From f48e6112537d6fee1e24e6849978f7ec9b2aa358 Mon Sep 17 00:00:00 2001 From: xiongziliang <771730766@qq.com> Date: Sun, 29 Dec 2019 15:55:20 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96http=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E5=99=A8=E6=80=A7=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Http/HttpBody.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/Http/HttpBody.h b/src/Http/HttpBody.h index 9428ab07..66443ad0 100644 --- a/src/Http/HttpBody.h +++ b/src/Http/HttpBody.h @@ -72,6 +72,7 @@ public: * @param cb 回调函数 */ virtual void readDataAsync(uint32_t size,const function &cb){ +#if 0 if(size >= remainSize()){ //假如剩余数据很小,那么同步获取(为了优化性能) cb(readData(size)); @@ -85,6 +86,12 @@ public: cb(strongSelf->readData(size)); } }); +#else + //由于unix和linux是通过mmap的方式读取文件,所以把读文件操作放在后台线程并不能提高性能 + //反而会由于频繁的线程切换导致性能降低以及延时增加,所以我们默认同步获取文件内容 + //(其实并没有读,拷贝文件数据时在内核态完成文件读) + cb(readData(size)); +#endif } private: EventPoller::Ptr _async_read_thread;