yezheyu 最近的时间轴更新
yezheyu

yezheyu

V2EX 第 166159 号会员,加入于 2016-04-03 15:25:18 +08:00
今日活跃度排名 31781
请教下关于 IO 缓冲的一点疑问
Unix  •  yezheyu  •  28 天前  •  最后回复来自 yezheyu
3
写了点数据结构和类的笔记,大家帮我看看对吗?
程序员  •  yezheyu  •  133 天前  •  最后回复来自 weeei
4
关于 JavaScript 中 stream 的一些疑惑
程序员  •  yezheyu  •  237 天前  •  最后回复来自 yezheyu
8
关于代理的一些理解,请大家帮我看下对不对
程序员  •  yezheyu  •  245 天前  •  最后回复来自 Hccake
10
关于异步任务的一点疑问,有没有老哥帮忙解答下
程序员  •  yezheyu  •  320 天前  •  最后回复来自 h0099
43
如何定制 console.log 的打印结果?
程序员  •  yezheyu  •  2022-11-25 14:34:08 PM  •  最后回复来自 yezheyu
23
请教一个 vue 中组件复用的生成的页面间切换的问题
程序员  •  yezheyu  •  2022-10-04 11:57:00 AM  •  最后回复来自 yezheyu
14
请教一个 vue 中组件复用的问题
程序员  •  yezheyu  •  2022-10-02 12:40:16 PM  •  最后回复来自 Zzzz77
23
请教一个高级语言中函数调用栈相关的问题
  •  1   
    程序员  •  yezheyu  •  2022-08-31 19:05:38 PM  •  最后回复来自 Orlion
    22
    yezheyu 最近回复了
    28 天前
    回复了 yezheyu 创建的主题 Unix 请教下关于 IO 缓冲的一点疑问
    顶下帖
    29 天前
    回复了 yezheyu 创建的主题 Unix 请教下关于 IO 缓冲的一点疑问
    @zeonluang 是不是对于文件来说,如果文件数据比较小,page 的优先级是高于行缓冲模式?
    132 天前
    回复了 alanying 创建的主题 Linux 大家 Linux 新安装一般是怎么分区的?
    借楼问下

    大家说的分区方式完全不懂,每次装 linux ,如果要手动设置分区,就完全不知道怎么搞

    如果想了解下文件系统、LVM 、boot loader 、分区表等知识应该看些什么书籍呢?
    237 天前
    回复了 yezheyu 创建的主题 程序员 关于 JavaScript 中 stream 的一些疑惑
    @otakustay 好的,多谢
    238 天前
    回复了 yezheyu 创建的主题 程序员 关于 JavaScript 中 stream 的一些疑惑
    @otakustay

    那我换中说法

    JavaScript 中的 stream 接口只是对消费方式的一种改造,把原来那种必须把数据完全接收到 buffer ,再一次消费,改成接收一点消费一点

    而在 http 中不管使用什么方式组织数据发送,都是 http 流模式,因为这是 tcp 赋予的特性。

    对于 Transfer-Encoding: chunked 是才是对数据组织方式一种改造,把数据变成分块传输,并把数据长度由在 header 整体记录,改为让每个数据块自己记录

    这样理解合适吗?
    242 天前
    回复了 yezheyu 创建的主题 程序员 关于 JavaScript 中 stream 的一些疑惑
    @otakustay
    第一种模式,假设是长度是 30g ,传统的处理方式是根据 Content-Length 事先在内存中开辟一个 30g 的 buffer ,等数据把 buffer 填满即意味着 tcp 连接中的这个响应接收完毕,然后再把数据交给业务代码去消费

    而把 Content-Length 的响应改用 stream 模式去消费,接收一块数据,就直接交给业务代码去消费,并记下数据的长度,重复这个过程并累加计算数据长度,直到累加长度等于 30g ,也就意味着 tcp 连接中这个响应接收完毕

    我这样理解对吗?

    所以 JavaScript 中的 stream 只是对消费方式的一种改造,而 http 中的 stream 是对数据的一种组织方式,我这样理解对吗?
    @Hccake @kop1989smurf @NoOneNoBody @josephxrays @sillydaddy 首先谢谢大家!

    所以,如果浏览器到 proxy client 之间如果使用的 socks5 ,是谁把原本用户使用浏览器发出的 http 请求转换成 socks5 呢?

    是 switchyomega 这个插件吗?那这个 switchyomega 实际上也是扮演着一个微型的代理角色是吗?

    而在代理软件上,一般我们也可以进行流量的访问控制,所以我们可以把 PAC 写在 switchyomega ,也可以写在 shadowsocks 上对吗?


    游戏加速器也是类似这种架构吗?

    加速器软件代理游戏发出的 UDP 请求,通过自己的专线发给国外的代理服务器,再交给游戏服务器。收到数据后再原路返回
    关于 button 的点击事件的回调函数 this 为啥是 button

    我猜是这样的的,你们看对吗?

    当页面上一个点击事件触发时,页面上如果有多个元素绑定了点击事件,那总不能把所有的点击事件都触发了,为了精准触发某个按钮的点击事件,所以区别于一般的任务,其多保存了一个回调函数的绑定对象,大概结构类似下面

    {
    btn1:{
    showText1: func(){…},
    showText2: func(){…}
    }
    }

    所以回调函数调用时是这样 btn1.showText()调用,走的隐式绑定,所以 this 指向 btn1

    @biguokang
    @autoxbc
    @Al0rid4l
    @biguokang
    @autoxbc
    @Al0rid4l
    @h0099

    还有个问题想请教大家

    ---------------------------------------------------------
    setTimeout( function(){ console.log(this), 0 } )
    // 打印 window
    --------------------------------------------------------

    异步任务的回调函数中的 this 大多数是指向 window ,因为回调函数作为任务执行时,主线程的执行栈已清空,函数是单独调用,其默认绑定的就是 window

    我这样理解对吗?

    那为啥 button 点击事件的回调函数中 this 会指向事件的触发对象 button 呢?而不是 window ?
    @biguokang #30
    老哥你这一说,我也觉得像,哈哈
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1003 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 19:58 · PVG 03:58 · LAX 11:58 · JFK 14:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.