Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

浅析TCP字节流与UDP数据报的区别

浅析TCP字节流与UDP数据报的区别

“TCP是一种流模式的协议,UDP是一种数据报模式的协议”,这句话相信大家对这句话已经耳熟能详~但是,“流模式”与“数据包模式”在编程的时候有什么区别呢?以下是我的理解,仅供参考!1、TCP打个比方比喻TCP,你家里有个蓄水池,你可以里面倒水,蓄水池上有个龙头,你可以通过龙头将水池里的水放出来,然后用各种各样的容器装(杯子、矿泉水瓶、锅碗瓢盆)接水。上面的例子中,往水池里倒几次水和接几...
深入理解 Java中的流 (Stream)

深入理解 Java中的流 (Stream)

最近在看《Hadoop:The Definitive Guide》,对其分布式文件系统HDFS的Streaming data access不能理解。基于流的数据读写,太抽象了,什么叫基于流,什么是流?Hadoop是Java语言写的,所以想理解好Hadoop的Streaming Data Access,还得从Java流机制入手。流机制也是JAVA及C++中的一个重要的机制,通过流使我们能够自由地操作包括文件,内存,IO设备等等中的数据。首先,流是什么?流是个...
Jetty和Maven HelloWorld

Jetty和Maven HelloWorld

Apache Maven是一个软件项目管理和理解工具。基于项目对象模型(POM)内容,Maven能够通过信息中心管理一个项目构建、报告和文档。它是一个理想的工具用来构建Web应用项目。这项目可以使用Jetty Maven插件在部署模式下运行Web应用。你能使用Maven来构建嵌入式Jetty应用程序和标准的基于Web应用。Maven权威指南_中文完整版清晰PDF http://www.linuxidc.com/Linux/2014-06/103690.ht...
Oracle 发布大量安全更新,涉及 Java 等

Oracle 发布大量安全更新,涉及 Java 等

Oracle 刚刚发布 大量安全更新 涉及多个产品的 104 个安全漏洞。其中有 37 个漏洞是关于 Java SE,Oracle 的公告显示 35 个可在没有认证的情况下通过远程利用。其中 4 个 bug 的 CVSS 基础分值达 10,这是一个 bug 的最危险级别。37 个漏洞中的 29 个只影响到客户端发布,6 个影响客户端和服务器端的 Java SE。Oracle 的安全部门懂事 Eric Maurice 发表 博客 称其中有漏洞影响到 java...
C/C++中使用的正则表达式库

C/C++中使用的正则表达式库

正则表达式正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则引擎主要可以分为两大类:一种是DFA,一种是NFA。主流的正则引擎又分为3类:1. DFA引擎DFA 引擎在线性时状态下执行,因为它们不要求回溯(并因此它们永远不测试相同的字符两次)。DFA 引擎还可以确保匹配最长的可能的字符串。...
研究称 OpenSSL 漏洞公布前未遭受黑客攻击

研究称 OpenSSL 漏洞公布前未遭受黑客攻击

美国安全研究人员表示,目前还没有任何证据能证明“心脏流血”漏洞对外公布前已经被黑客利用。 自从“心脏流血”漏洞上周曝光后,所有人都在问同一个问题:是否有人在谷歌研究人员发现该漏洞前利用其发动过攻击。 从OpenSSL出现这一漏洞到被研究人员披露,中间时隔长达两年。而由于美国联邦调查局(FBI)和谷歌等众多政府机构和互联网公司都在使用这套免费软件,因此倘若黑客提前获知该漏洞,便可利用其窃取密码和用于破解加密...
Java ClassLoader 基础

Java ClassLoader 基础

基本概念:Java Classloader(类装载器):JRE的一个模块,用于装载Java类到JVM。JRE加载一个类到JVM需要以下基本步骤:装载:查找并导入class文件,如String.class;链接:校验、准备、解析,其中解析步骤是可以选择的,由使用目的决定;校验:检查载入class文件数据的正确性,因为某些class文件可能是利用工具生成,而非使用Java编译器编译生成;准备:给类的静态成员分配存储空间;解析:将符号引用转成直接引用;初始化:对...
Linux编程基础--形象地解释什么是epoll

Linux编程基础--形象地解释什么是epoll

epoll是多路复用IO(I/O Multiplexing)中的一种方式,但是仅用于linux2.6以上内核,在开始讨论这个问题之前,先来解释一下为什么需要多路复用IO.以一个生活中的例子来解释:假设你在大学中读书,要等待一个朋友来访,而这个朋友只知道你在A号楼,但是不知道你具体住在哪里,于是你们约好了在A号楼门口见面.如果你使用的阻塞IO模型来处理这个问题,那么你就只能一直守候在A号楼门口等待朋友的到来,在这段时间里你不能做别的事情,不难知道,这种方式的...
Linux编程基础--什么是I/O

Linux编程基础--什么是I/O

I/O是input/output的缩写,即输入输出端口。每个设备都会有一个专用的I/O地址,用来处理自己的输入输出信息。CPU与外部设备、存储器的连接和数据交换都需要通过接口设备来实现,前者被称为I/O接口,而后者则被称为存储器接口。存储器通常在CPU的同步控制下工作,接口电路比较简单;而I/O设备品种繁多,其相应的接口电路也各不相同,因此,习惯上说到接口只是指I/O接口。1接口分类编辑I/O接口的功能是负责实现CPU通过系统总线把I/O电路和外围设备联系...
Qt中的事件循环

Qt中的事件循环

1、事件循环一般用exec()函数开启。QApplicaion::exec()、QMessageBox::exec()都是事件循环。其中前者又被称为主事件循环。事件循环首先是一个无限“循环”,程序在exec()里面无限循环,能让跟在exec()后面的代码得不到运行机会,直至程序从exec()跳出。从exec()跳出时,事件循环即被终止。QEventLoop::quit()能够终止事件循环。其次,之所以被称为“事件&rdq...
<< 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 >>