从jdk1.4开始,java中引入了nio包,提供了非阻塞式的网络编程模型,提供网络性能。nio中核心组件有三个:channel、buffer、selector。这里主要探讨buffer的概念和使用。buffer本质上是数据容器,可以存储java中的各种原始数据类型,并提供了读、写等各种操作。 1. ...
分类:
编程语言 时间:
2020-07-26 15:39:15
阅读次数:
64
信源编码: (1)减少码元数据和降低码元速率 (2) A/D 音频ADC 信源译码: D/A 音频DAC 信道编码: Channel Coding 差错控制 BCH 加密和解密; 信息的安全; 加密 encrytion 解密 decryption 恢复原来的信息 HDCP 数字调制和解调: ASK ...
分类:
其他好文 时间:
2020-07-26 01:37:04
阅读次数:
94
二、重点非阻塞模型:NIO模型1. Channel:和流等级一样,双向的,可读可写 2. Buffer:存数据的地方,可以用来读写 3. Selector:NIO的核心类,可以监听多个channel的时间(连接打开,数据到达)-->使得单线程可以管理多个channel,只有在读写事件发生时才找线程过 ...
分类:
编程语言 时间:
2020-07-26 00:44:25
阅读次数:
69
https://blog.csdn.net/RunzIyy/article/details/104635680?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.channel_par ...
分类:
数据库 时间:
2020-07-25 11:46:02
阅读次数:
129
Go语言中数据类型极其丰富,除了基本的整型、浮点型、布尔型、字符串外,还有数组、切片、结构体、函数、map、通道channel等。Go语言的基本类型和其他语言大同小异。 基本数据类型 整型 整型分为以下两个大类: 按长度分为:int8、int16、int32、int64 对应的无符号整型:uint8 ...
分类:
编程语言 时间:
2020-07-22 01:40:44
阅读次数:
87
无缓冲通道(阻塞通道) 写入后立即阻塞,需要另一个协程读取通道的数据后,才能继续执行。 通道操作符 ch <- v // Send v to channel ch. v := <-ch // Receive from ch, and // assign value to v. 无缓冲通道 ch := ...
分类:
其他好文 时间:
2020-07-20 15:23:45
阅读次数:
70
1. 向已经 close 的 channel 写数据 2. map 多 goroutinue 读写冲突 3. interface 转换为不同类型 4. 向空指针类型的变量写数据 5. 切片数据越界 6. 除数为 0 7. cgo 的 panic 8. 用户调用 panic 9. goroutinue ...
分类:
其他好文 时间:
2020-07-20 15:21:50
阅读次数:
72
在Netty中 事务的处理都是放入自定义的Handler中的 如果某些业务比较耗时 最终也会阻塞线程 这时就需要任务队列来异步处理任务了。 1.用户自定义的普通任务 例: ctx.channel().eventLoop().execute(new Runnable() { @Override pub ...
分类:
Web程序 时间:
2020-07-20 10:56:39
阅读次数:
127
swoole 协程通道 为了协程直接互相通讯传递数据 和go的通道很相似 Co\run(function(){ $chan = new Swoole\Coroutine\Channel(1); Swoole\Coroutine::create(function () use ($chan) { fo ...
分类:
其他好文 时间:
2020-07-19 23:38:57
阅读次数:
108
一、RabbitMQ简介 1. 应用场景 (1)任务异步处理 ? 将不需要同步处理的并且耗时长的操作由消息队列通知消息接收方进行异步处理。缩短了应用程序的响应时间。 (2)应用程序解耦合 ? MQ相当于一个中介,生产方通过MQ与消费方交互,它将应用程序进行了解耦合。 2. 工作原理 ? 下图是Rab ...
分类:
其他好文 时间:
2020-07-18 22:55:09
阅读次数:
100