<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[CloudsRush的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/CloudsRush</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; CloudsRush]]></copyright><item><title><![CDATA[String&StringBuffer&StringBuilder]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/111387812</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/111387812</guid><author>CloudsRush</author><pubDate>Fri, 18 Dec 2020 19:47:03 +0800</pubDate><description><![CDATA[String、StringBuffer、StringBuilder都是对字符串进行操作。他们最大的区别就是String类被定义为final类，并且存储在方法区内存中的字符串池中，其主要目的是避免字符串的频繁使用而频繁创建字符串对象，进而达到字符串的复用。
String str1 = "Hello";
String str2 = "Hello";//字符创str1与str2会指向同一个字符串对象"Hello"

String str1 = "world";//在这里并没有真的改变str1的值，只是改变了str]]></description><category></category></item><item><title><![CDATA[Java中super]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/110890325</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/110890325</guid><author>CloudsRush</author><pubDate>Tue, 08 Dec 2020 21:31:43 +0800</pubDate><description><![CDATA[super.属性名：访问父类的属性。
super.方法名()：访问父类的方法。
super(实参)：调用父类的构造方法。
父类和子类拥有同名属性或相同方法的情况下，在子类中若想访问父类中的属性或方法，使用super.属性或super.方法(参数)的方法加以区分。

...]]></description><category></category></item><item><title><![CDATA[NS3安装]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/110877094</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/110877094</guid><author>CloudsRush</author><pubDate>Tue, 08 Dec 2020 17:13:14 +0800</pubDate><description><![CDATA[NS3安装官方指导
NS3英文全称Network Simulator-3，可通过source archive，Git，Bake三种方法。我使用源文件(source archive)的方式进行安装。
首先在官网下载NS3源文件压缩包。
创建目录。
cd
mkdir NS3workspace

将下载下来的压缩包复制到刚创建的文件NS3workspace目录下，接下来进行解压。
cd NS3workspace
tar -jxvf ns-allinone-3.32.tar.bz2

运行shell脚本安装软件。
]]></description><category></category></item><item><title><![CDATA[Ubuntu中ModuleNotFoundError  &&  AttributeError  解决方法]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/110653745</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/110653745</guid><author>CloudsRush</author><pubDate>Fri, 04 Dec 2020 17:13:21 +0800</pubDate><description><![CDATA[AttributeError: module ‘sysv_ipc’ has no attribute ‘SharedMemory’
在安装sysv_ipc的过程中由于使用pip install sysv_ipc的命令找不到相应的安装包，所以我选择了使用git克隆的方法来安装此软件包。具体步骤为：

在github上找到相应的软件包。网址为https://github.com/osvenskan/sysv_ipc
使用以下命令将文件克隆到当前目录下。

git clone https://github.com]]></description><category></category></item><item><title><![CDATA[fatal error: Python.h: 没有那个文件或目录]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/110580061</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/110580061</guid><author>CloudsRush</author><pubDate>Thu, 03 Dec 2020 22:02:05 +0800</pubDate><description><![CDATA[fatal error: Python.h: 没有那个文件或目录
sudo apt-get install python-dev

sudo apt-get install pythonx.y-dev

x.y为python版本。

]]></description><category></category></item><item><title><![CDATA[反转字符串中的单词 III]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/110522172</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/110522172</guid><author>CloudsRush</author><pubDate>Thu, 03 Dec 2020 11:01:12 +0800</pubDate><description><![CDATA[力扣557 反转字符串中的单词 III
给定一个字符串，你需要反转字符串中每个单词的字符顺序，同时仍保留空格和单词的初始顺序。
示例：
输入：“Let’s take LeetCode contest”
输出：“s’teL ekat edoCteeL tsetnoc”
提示：
在字符串中，每个单词由单个空格分隔，并且字符串中不会有任何额外的空格。
class Solution {
public:
    string reverseWords(string s) {
        string rev;//]]></description><category></category></item><item><title><![CDATA[Java8新特性]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/110482774</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/110482774</guid><author>CloudsRush</author><pubDate>Wed, 02 Dec 2020 15:29:29 +0800</pubDate><description><![CDATA[Java 8，又称为 jdk 1.8。是 Java 语言开发的一个主要版本。它支持函数式编程，新的 JavaScript 引擎，新的日期 API，新的Stream API 等。
新特性
Lambda 表达式 − Lambda 允许把函数作为一个方法的参数（函数作为参数传递到方法中）。
方法引用 − 方法引用提供了非常有用的语法，可以直接引用已有Java类或对象（实例）的方法或构造器。与lambda联合使用，方法引用可以使语言的构造更紧凑简洁，减少冗余代码。
默认方法 − 默认方法就是一个在接口里面有了一个实]]></description><category></category></item><item><title><![CDATA[基于RL的拥塞控制算法Orca]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/110406242</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/110406242</guid><author>CloudsRush</author><pubDate>Mon, 30 Nov 2020 21:43:27 +0800</pubDate><description><![CDATA[项目源码Orca
Orca v1.0
本版本提供了论文“经典与现代：基于实用学习的互联网拥塞控制”中的源代码和实验材料。
安装指南
安装所需工具
安装Mahimahi
sudo apt-get install build-essential git debhelper autotools-dev dh-autoreconf iptables protobuf-compiler libprotobuf-dev pkg-config libssl-dev dnsmasq-base ssl-cert libxcb]]></description><category></category></item><item><title><![CDATA[Java参数传递]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/110286227</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/110286227</guid><author>CloudsRush</author><pubDate>Sat, 28 Nov 2020 19:40:51 +0800</pubDate><description><![CDATA[在探讨Java参数传递机制之前我们先来看两个程序。
public class Test {
	public static void main(String[] args) {
		int value = 1;
		test(value);
		System.out.println("In main, value is:" + value);
	}
	
	public static void test(int v) {
		v++;
		System.out.println("In test, value i]]></description><category></category></item><item><title><![CDATA[JVM底层原理]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/109988857</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/109988857</guid><author>CloudsRush</author><pubDate>Mon, 23 Nov 2020 17:06:32 +0800</pubDate><description><![CDATA[JVM与内存有着密不可分的关系，内存是非常重要的系统资源，是硬盘和CPU的中间仓库及桥梁，承载着操作系统和应用程序的实时运行JVM内存布局规定了Java在运行过程中内存申请、分配、管理的策略，保证了JVM的高效稳定运行。

栈内存区可以被分为虚拟机栈和本地栈内存栈。虚拟机栈执行的是 Java 方法，本地方法栈执行的是本地方法。虚拟机会为每个线程分配一个虚拟机栈，每个虚拟机栈中都有若干个栈帧，每个栈帧中存储了局部变量表、操作数栈、动态链接、返回地址等。一个栈帧就对应 Java 代码中的一个方法，当线程执行到一]]></description><category></category></item><item><title><![CDATA[宏定义与内联函数的对比]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/109890011</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/109890011</guid><author>CloudsRush</author><pubDate>Sat, 21 Nov 2020 09:52:24 +0800</pubDate><description><![CDATA[宏定义
对宏定义的理解参阅此链接详解宏定义
宏定义在使用时只做简单的文本替换，并没有做严格的参数检查，也就不能享受C++编译器严格类型检查的好处，另外它的返回值也不能被强制转换为可转换的合适的类型宏定义的使用就存在着一系列的隐患和局限性。
内联函数
对内联函数的理解参阅此链接内联函数
1 内联函数不能包括复杂的控制语句，如循环语句和switch语句；
2 内联函数不能包括复杂的控制语句，如循环语句和switch语句；
3 只将规模很小（一般5个语句一下）而使用频繁的函数声明为内联函数。在函数规模很小的情况下]]></description><category></category></item><item><title><![CDATA[对预编译的理解]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/109889443</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/109889443</guid><author>CloudsRush</author><pubDate>Sat, 21 Nov 2020 09:26:04 +0800</pubDate><description><![CDATA[预编译是程序编译前的准备阶段，预编译又称为预处理，预编译是做些代码文本的替换工作，把一个工程中的一部分代码预先编译好放在一个文件里。C 编译系统在对程序进行通常的编译之前，首先进行预处理。C/C++提供的预处理功能主要：宏定义、文件包含、条件编译。
处理以#开头的指令，比如拷贝#include 包含的文件代码，#define 宏定义的替换，条件编译等，就是为编译做的预备工作的阶段。
主要处理#开始的预编译指令，预编译指令指示了在程序正式编译前就由编译器进行的操作，可以放在程序中的任何位置。

...]]></description><category></category></item><item><title><![CDATA[Java重载条件]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/109866031</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/109866031</guid><author>CloudsRush</author><pubDate>Fri, 20 Nov 2020 21:37:24 +0800</pubDate><description><![CDATA[1 在同一个类中。
2 功能相似。
3 不同方法拥有相同的方法名。
4 参数列表不同：数量不同、顺序不同、类型不同。
方法重载和返回值类型无关，因此返回值类型不可以作为区分不同方法的依据。

...]]></description><category></category></item><item><title><![CDATA[云核心基础知识]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/109826024</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/109826024</guid><author>CloudsRush</author><pubDate>Fri, 20 Nov 2020 20:07:28 +0800</pubDate><description><![CDATA[C类地址最多可以放多少台主机，哪些地址不可用，分别用作什么
28−22^8 - 228−2
0和255的地址不可用。
0：网络地址。
255：广播地址。
死锁概念，如何避免死锁
由于两个或者多个线程互相持有对方所需要的资源，导致这些线程处于等待状态，无法前往执行。当线程互相持有对方所需要的资源时，会互相等待对方释放资源，如果线程都不主动释放所占有的资源，将产生死锁。
一个可行的做法是释放所有锁，回退，并且等待一段随机的时间后重试。这个和简单的加锁超时类似，不一样的是只有死锁已经发生了才回退，而不会是因为加锁]]></description><category></category></item><item><title><![CDATA[static关键字总结]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/109862227</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/109862227</guid><author>CloudsRush</author><pubDate>Fri, 20 Nov 2020 20:05:58 +0800</pubDate><description><![CDATA[在几次实习面试当中面试官都考察了对于static的理解，所以是时候队它进行一个归纳总结了。
“static方法就是没有this的方法。在static方法内部不能调用非静态方法，反过来是可以的。而且可以在没有创建任何对象的前提下，仅仅通过类本身来调用static方法。这实际上正是static方法的主要用途。”
 Java编程思想 
这段话虽然只是说明了static方法的特殊之处，但是可以看出static关键字的基本作用，简而言之就是：方便在没有创建对象的情况下来进行调用（方法/变量）。所以，被static关键]]></description><category></category></item><item><title><![CDATA[Spring MVC]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/109824339</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/109824339</guid><author>CloudsRush</author><pubDate>Thu, 19 Nov 2020 21:08:10 +0800</pubDate><description><![CDATA[MVC是什么？
M 代表业务模型（Model），V 代表用户界面（View），C 代表控制器（controller)。MVC的目的是将M和V的实现代码分离，从而使同一个程序可以使用不同的表现形式。C存在的目的则是确保M和V的同步，一旦M改变，V应该同步更新。
Spring MVC 的架构
Spring类似于一个具有多种特性，也可以说是多种功能模块的应用平台，（特性就比如IoC，AOP，事务处理，持久化驱动等等），并且可以用来与其他一些优秀并流行的开源框架进行快速的整合。
为解决持久层中一直未处理好的数据库事]]></description><category></category></item><item><title><![CDATA[Windows MFC]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/109823108</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/109823108</guid><author>CloudsRush</author><pubDate>Thu, 19 Nov 2020 20:11:47 +0800</pubDate><description><![CDATA[微软基础类库（Microsoft Foundation Classes MFC）是微软公司提供的一个类库（class libraries），以C++类的形式封装了Windows API，并且包含一个应用程序框架，以减少应用程序开发人员的工作量。其中包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。
句柄：句柄（Handle）是一个用来标识对象或者项目的标识符，可以用来描述窗体、文件等，值得注意的是句柄不能是常量。Windows之所以要设立句柄，根本上源于内存管理机制的问题，即虚拟]]></description><category></category></item><item><title><![CDATA[云计算基础知识]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/109821771</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/109821771</guid><author>CloudsRush</author><pubDate>Thu, 19 Nov 2020 19:40:25 +0800</pubDate><description><![CDATA[云计算简介
百度百科：云计算简介
云计算是继1980年代大型计算机到客户端-服务器的大转变之后的又一种巨变。云计算的出现并非偶然，早在上世纪60年代，麦卡锡就提出了把计算能力作为一种像水和电一样的公用事业提供给用户的理念，这成为云计算思想的起源。在20世纪80年代网格计算、90年代公用计算，21世纪初虚拟化技术、SOA、SaaS应用的支撑下，云计算作为一种新兴的资源使用和交付模式逐渐为学界和产业界所认知。中国物联网校企联盟评价云计算为“信息时代商业模式上的创新”。
云服务用来通过互联网，使用网络中的服务器来]]></description><category></category></item><item><title><![CDATA[增广贤文纯净版]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/109725780</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/109725780</guid><author>CloudsRush</author><pubDate>Mon, 16 Nov 2020 17:32:13 +0800</pubDate><description><![CDATA[集韵增广 观今鉴古
昔时贤文，诲汝谆谆。集韵增广，多见多闻。观今宜鉴古，无古不成今。
酒逢知己 将心比心
知己知彼，将心比心。酒逢知己饮，诗向会人吟。相识满天下，知心能几人？相逢好似初相识，到老终无怨恨心。
把握规律 抓住时机
近水知鱼性，近山识鸟音。易涨易退山溪水，易反易复小人心。运去金成铁，时来铁似金。读书须用意，一字值千金。
人心难测 仁义千金
逢人且说三分话，未可全抛一片心。有意栽花花不发，无心插柳柳成荫。画虎画皮难画骨，知人知面不知心。钱财如粪土，仁义值千金。

...]]></description><category></category></item><item><title><![CDATA[When Machine Learning Meets Congestion Control: A Survey and Comparison]]></title><link>https://blog.youkuaiyun.com/CloudsRush/article/details/109668181</link><guid>https://blog.youkuaiyun.com/CloudsRush/article/details/109668181</guid><author>CloudsRush</author><pubDate>Sat, 14 Nov 2020 16:15:47 +0800</pubDate><description><![CDATA[论文阅读笔记
此论文是一篇综述性的文章，通过阅读本论文可以对拥塞控制算法有一个较为清晰的认识，区分传统算法及辨识各种传统算法的优劣，特别是本文通过导引的方式可以让读者了解机器学习在拥塞控制算法中的应用现状，对应该使用哪种机器学习的方法给读者指明了方向，并使得读者认识到应用RL在CC中的优劣势及面临的挑战。
When Machine Learning Meets Congestion Control: A Survey and Comparison
摘要：
主要介绍机器学习目前跨学科的应用和激增趋势。随后介绍]]></description><category></category></item></channel></rss>