一、什么是线程 线程:顾名思义,就是一条流水线工作的过程,一条流水线必须属于一个车间,一个车间的工作过程是一个进程 所以,进程只是用来把资源集中到一起(进程只是一个资源单位,或者说资源集合),而线程才是cpu上的执行单位。 多线程(即多个控制线程)的概念是,在一个进程中存在多个控制线程,多个控制线程 ...
分类:
编程语言 时间:
2018-02-19 22:25:11
阅读次数:
241
局部内部类 A:局部内部类可以直接访问外部类的成员。 B:局部内部类在局部位置可以创建内部类对象,通过内部类对象调用内部类方法,来使用局部内部类功能。 C:局部内部类访问局部变量,局部变量必须加final修饰。为什么呢? 因为局部变量会随着方法的调用完毕而消失,这个时候,局部对象并没有立马从堆内存中 ...
分类:
编程语言 时间:
2018-02-19 22:26:20
阅读次数:
219
刚才翻了翻2年以前用python2.7写的一个爬虫程序,主要功能就是把各地市知识产权局/专利局网站的专利相关项目、课题通知,定期爬取和分析,辅助企业进行项目申请。 这里要谈的不是爬虫功能的实现,而是今天重跑程序的时候发现,日志文件正常展现中文,但是终端展现的确实乱码。影响体验,着实比较郁闷。 相关代 ...
分类:
编程语言 时间:
2018-02-19 22:54:31
阅读次数:
654
一多线程的概念介绍 threading模块介绍 threading模块和multiprocessing模块在使用层面,有很大的相似性。 二、开启多线程的两种方式 在一个进程下开启多个线程与在一个进程下开启多个子进程的区别 进程之间是互相隔离的,不共享。需要借助第三方来完成共享(借助队列,管道,共享数 ...
分类:
编程语言 时间:
2018-02-19 22:55:18
阅读次数:
207
一、Java反序列化漏洞的挖掘 1、黑盒流量分析: 在Java反序列化传送的包中,一般有两种传送方式,在TCP报文中,一般二进制流方式传输,在HTTP报文中,则大多以base64传输。因而在流量中有一些特征: (1)TCP:必有aced0005,这个16进制流基本上也意味者java反序列化的开始; ...
分类:
编程语言 时间:
2018-02-19 22:55:49
阅读次数:
328
python 编写server的步骤: 1第一步是创建socket对象。调用socket构造函数。如: socket = socket.socket(family, type ) family参数代表地址家族,可为AF_INET或AF_UNIX。AF_INET家族包括Internet地址,AF_UN ...
分类:
编程语言 时间:
2018-02-19 22:55:56
阅读次数:
222
之前写过用标准库使用Python Smtplib和email发送邮件,感觉很繁琐,久了不用之后便忘记了。前几天看知乎哪些Python库让你相见恨晚?,看到了yagmail第三方库,学习过程中遇到一些问题,记录在此处。 之前使用的python的smtplib、email模块发模块的一步步骤是: 要完成 ...
分类:
编程语言 时间:
2018-02-19 22:56:31
阅读次数:
1787
测试系统:Windows XP 编译器:VS2008 (四) 虚继承的情况: 如果说没有虚函数的虚继承只是一个噩梦的话,那么这里就是真正的地狱。这个C++中最复杂的继承层次在VC上的实现其实我也没有完全理解,摸爬滚打了一番也算得出了微软的实现方法吧,至于一些刁钻的实现方式我也想不到什么理由来解释它, ...
分类:
编程语言 时间:
2018-02-19 22:56:41
阅读次数:
252
创建: 2018/02/19 【任务表】TODO ...
分类:
编程语言 时间:
2018-02-19 22:57:12
阅读次数:
210
一、死锁现象与递归锁 进程也是有死锁的 所谓死锁: 是指两个或两个以上的进程或线程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用, 它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程, 如下就是死锁 那么怎么解决死锁现象呢? 解决方法 ...
分类:
编程语言 时间:
2018-02-19 22:57:21
阅读次数:
248
给idea配置jdk8.0及maven版本库,开始一个spring boot项目一 ...
分类:
编程语言 时间:
2018-02-19 22:57:31
阅读次数:
527
Spring框架提供了构建Web应用程序的全功能MVC模块。通过策略接口,Spring框架是高度可配置的,而且支持多种视图技术。Spring MVC分离了控制器,模型对象,分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。 Spring的MVC是基于Servlet功能实现的,通过实现Ser ...
分类:
编程语言 时间:
2018-02-19 22:57:48
阅读次数:
272
我们知道,使用面向对象编程(OOP)有一些弊端,当需要为多个不具有继承关系的对象引入同一个公共行为时,例如日志,安全检测等,我们只有在每个对象里引用公共行为,这样程序中就产生了大量的重复代码,程序就不便于维护了,所以就有了一个对面向对象编程的补充,即面向方面编程(AOP),AOP所关注的方向是横向的 ...
分类:
编程语言 时间:
2018-02-19 22:58:07
阅读次数:
271
一、基础知识 Java中可使用assert来创建断言,断言实在程序执行期间应当为真的条件。若条件为假,则会抛出AssertionError异常。断言默认为关闭,在发布代码中通常不会被使用,也不需要从发布代码中删除assert语句。 断言可以代替判断语句,简化开发期间对常见错误的检查。 二、开关断言 ...
分类:
编程语言 时间:
2018-02-19 23:19:11
阅读次数:
238
匿名内部类 就是局部内部类的简化写法。 前提:存在一个类或者接口。 这里的类可以是具体类也可以是抽象类。 格式: new 类名或者接口名() { 重写方法; } 匿名内部类的本质是什么呢? 答:是一个继承了该类的子类或者实现了该接口的实现类(子类)的匿名对象。 简言之:匿名内部类是一个子类的匿名对象 ...
分类:
编程语言 时间:
2018-02-19 23:19:19
阅读次数:
248
注意 1.不能无限的开进程,不能无限的开线程最常用的就是开进程池,开线程池。其中回调函数非常重要回调函数其实可以作为一种编程思想,谁好了谁就去掉2.只要你用并发,就会有锁的问题,但是你不能一直去自己加锁吧那么我们就用QUEUE,这样还解决了自动加锁的问题由Queue延伸出的一个点也非常重要的概念。以 ...
分类:
编程语言 时间:
2018-02-19 23:19:53
阅读次数:
280
1.在js中数组的定义方式有两种: var a = [1,2,3,4]; var b = new Array(1,2,3,4); 这两种创建数组的方式并无区别,可根据习惯自行选用。 2.通过命令对数组的长度进行修改: 例如:var a = [1,2,3,4,5]; alert(a); 当执行:a.l ...
分类:
编程语言 时间:
2018-02-19 23:20:02
阅读次数:
263
http://www.cnblogs.com/alex3714/articles/5830365.html 可以看的内容 socket sever socket client 模块 ...
分类:
编程语言 时间:
2018-02-19 23:20:41
阅读次数:
262
python自带的web服务器 python自带的包可以建立简单的web服务器 BaseHTTPServer 提供基本的web服务和处理类 SimpleHTTPServer 包含执行get请求的SimpleHTTPRequestHandler类 CGIHTTPServer 包含处理POST请求和执行... ...
分类:
编程语言 时间:
2018-02-19 23:46:02
阅读次数:
230