书栈网 · BookStack 本次搜索耗时 0.033 秒,为您找到 90415 个相关结果.
  • 并发

    并发 并发 以线程安全的方式创建单例(只创建一次)的最好选择是 sync.Once 不要用 flags, mutexes, channels or atomics 永远不要使用 select{} , 省略通道, 等待信号 不要关闭一个发送(写入)管道,应该由创建者关闭 往一个关闭的 channel 写数据会引起 panic math/ran...
  • 并发

    并发 并发 Go 将并发结构作为核心语言的一部分提供。本节课程通过一些示例介绍并展示了它们的用法。 Go 程 信道 带缓冲的信道 range 和 close select 语句 默认选择 练习:等价二叉查找树 练习:等价二叉查找树 sync.Mutex 练习:Web 爬虫 接下来去哪?
  • 并发

    Concurrency 并发 Share by communicating 通过通信共享内存 Goroutines Goroutines Channels 信道 Channels of channels 信道中的信道 Parallelization 并行化 A leaky buffer 可能泄露的缓冲区 Concurrenc...
  • 并发

    并发 进程 进程的基本状态 进程调度 调度种类 非抢占式调度与抢占式调度 调度策略的设计 调度算法 进程同步 临界资源与临界区 信号量 P操作 V操作 锁 CAS 死锁 死锁产生的四个必要条件 死锁避免 进程间通信 线程 线程的属性: 并发 进程 进程是一个具有独立功能的程序关于某个数据集合的一次运行活动。...
  • 并发

    并发 源码 并发 计算机用户想当然地认为他们的系统在一个时间可以做多件事。他们认为,他们可以工作在一个字处理器,而其他应用程序在下载文件,管理打印队列和音频流。即使是单一的应用程序通常也是被期望在一个时间来做多件事。例如,音频流应用程序必须同时读取数字音频,解压,管理播放,并更新显示。即使字处理器应该随时准备响应键盘和鼠标事件,不管多么繁忙,它总是...
  • 并发

    并发 找出哪些部分可以并行完成,哪部分必须是顺序的 goroutines很便宜,但不免费。 优化多线程代码 共享false -> 填充缓存行大小 共享true -> 分片 与上一节关于缓存和虚假/真实共享重叠 延迟同步; 它很贵,所以复制工作可能会更便宜 你可以控制的东西:worker的数量,批量大小 你需要一个互斥体来保护共享的可变状态。如果你...
  • 并发

    并发 使用 Promises, 不要使用回调 回调不够简洁, 因为他们会产生过多的嵌套。 在 ES2015/ES6 中, Promises 已经是内置的全局类型了,使用它们吧! 不好的: require ( 'request' ). get ( 'https://en.wikipedia.org/wiki/Robert_Cecil_Marti...
  • 并发

    并发 非互动 互动 协作 并发 让我们想象一个网站,它显示一个随着用户向下滚动而逐步加载的状态更新列表(就像社交网络的新消息)。要使这样的特性正确工作,(至少)需要两个分离的“进程” 同时 执行(在同一个时间跨度内,但没必要是同一个时间点)。 注意: 我们在这里使用带引号的“进程”,因为它们不是计算机科学意义上的真正的操作系统级别的进程。它...
  • 并发

    并发 定义和调用异步函数 异步序列 并行的调用异步方法 任务和任务组 非结构化并发 任务取消 Actors 并发 Swift 对于结构化的编写异步和并行代码有着原生的支持。异步代码可以被挂起并在之后继续执行,同一时间只能有一段代码被执行。代码支持挂起和继续执行,就可以在执行耗时很长的任务时抽空执行一些快速的操作,比如在下载文件、解析文件的...
  • 并发

    并发 并发 并发模型和Go语言类似。通过go foo() 来并发执行foo() 函数调用。目录每个并发函数运行在独立的系统线程。稍后我们会实现和goroutine类似的调度器。