sever side: import socketserver class MyTCPHandler(socketserver.BaseRequestHandler): def handle(self): '''try内的代码就是要实现的功能,目前是实现小写转大写,可以自定义, try是在客户端结束 ...
分类:
编程语言 时间:
2018-04-27 12:26:23
阅读次数:
189
一、死锁产生的四个条件 死锁(死锁最初概念是在多进程模式下提出的,这里以线程来描述是同一个意思)是多线程并发程序中的一个难题,要产生死锁需要满足下面4个条件: 二、死锁的预防 从破坏死锁产生的四个条件角度考虑: 〈1〉打破互斥条件。即允许进程同时访问某些资源。但是,有的资源是不允许被同时访问的,像打 ...
分类:
其他好文 时间:
2018-04-27 12:22:42
阅读次数:
130
java连接Oracle数据库的方式 1 特点:oracle.jdbc.OracleDriver是注册oracle驱动类; jdbc:oracle:thin:@localhost:1521:xe:连接oracle的方式:网络协议+访问方式+IP+端口号+xe数据库; user:hr数据库用户名 Pa ...
分类:
数据库 时间:
2018-04-26 01:04:46
阅读次数:
184
Mysql 系列文章主页 1 概念 在 Java 程序中,当多线程并发访问某个资源的时候,如果有非线程安全的操作,那么需要通过加锁来保护之。同理,在 Mysql 中,如果也有多个线程、多个事务并发访问某些资源(比如写同一行记录)时,也需要锁来保护,以确保数据的正确性。 2 分类 从对数据的操作类型来 ...
分类:
数据库 时间:
2018-04-24 17:29:48
阅读次数:
147
1.使用threading模块 说明 1. 可以明显看出使?了多线程并发的操作,花费时间要短很多 2. 创建好的线程,需要调? start() ?法来启动 2.主线程会等待所有的?线程结束后才结束 3.查看线程数量 4.run()方法写 说明 python的threading.Thread类有?个r ...
分类:
编程语言 时间:
2018-04-17 21:19:22
阅读次数:
197
AtomicInteger在多线程并发场景的使用 AtomicInteger提供原子操作来进行Integer的使用,因此十分适合高并发情况下的使用。 AtomicInteger位于包package java.util.concurrent.atomic下,主要源码如下: 首先看到改类里有两个私有的静 ...
分类:
其他好文 时间:
2018-04-13 18:00:37
阅读次数:
136
本文主要从整体上介绍Java中的多线程技术,对于一些重要的基础概念会进行相对详细的介绍,若有叙述不清晰或是不正确的地方,希望大家指出,谢谢大家:) 为什么使用多线程 并发与并行 我们知道,在单核机器上,“多进程”并不是真正的多个进程在同时执行,而是通过CPU时间分片,操作系统快速在进程间切换而模拟出 ...
分类:
编程语言 时间:
2018-04-11 00:03:18
阅读次数:
208
①继承不同。 ② Hashtable 中的方法是同步的,而HashMap中的方法在缺省情况下是非同步的。在多线程并发的环境下,可以直接使用Hashtable,但是要使用HashMap的话就要自己增加同步处理了。 ③ Hashtable中,key和value都不允许出现null值。 在HashMap中 ...
分类:
其他好文 时间:
2018-04-02 22:04:39
阅读次数:
171
本文是“响应式流”一节的附录,由于内容有点多,单独拿出来了,感兴趣的朋友可以看一下,对“响应式流”加深理解,不看也没关系。
《响应式Spring的道法术器》围绕Spring响应式技术栈,介绍响应式编程相关的理念、原则、原理、技术和框架。内容涉及基于Spring WebFlux开发响应式Web应用的方方面面,包括Reactor、Spring 5的WebFlux、Boot2、Reactive Data、Reactive Security等技术的应用。
分类:
编程语言 时间:
2018-03-23 14:14:17
阅读次数:
195
一、什么是线程池 为什么要使用线程池?在多线程并发开发中,线程的数量较多,且每个线程执行一定的时间后就结束了,下一个线程任务到来还需要重新创建线程,这样线程数量特别庞大的时候,频繁的创建线程和销毁线程需要一定时间而且增加系统的额外开销。基于这样的场景,线程池就出现了,线程池可以做到一个线程的任务处理 ...
分类:
编程语言 时间:
2018-03-21 23:20:41
阅读次数:
289