E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
编程实战
OC下的链式
编程实战
链式编程的介绍与Masonry首先看一下OC下使用优秀第三方框架Masonry在实现一个自动布局时候的实现代码:[self.demoTextFieldmas_makeConstraints:^(MASConstraintMaker*make){make.top.equalTo(self.view).and.offset(100);make.width.equalTo(self.view);make
gogo_coder
·
2020-07-11 01:15
websocket网络
编程实战
- 用原生SOCKET协议实现在线群聊聊天室和一对一单聊天室
前言上篇文章我们用STOMP子协议实现了在线群聊和一对一聊天室等功能,本篇我们继续WebSocket这个话题,这次我们换个实现维度:用原生的WebSocket来实现,看看这两者在实现上的差别有多大。实战WebSocket的要点一、WebSocket重要属性属性备注Socket.readyState只读属性readyState表示连接状态,可以是以下值:0-表示连接尚未建立。1-表示连接已建立,可以
wavebeed
·
2020-07-11 00:30
WebSocket
java网络编程
在线聊天
[Java并发
编程实战
] 第14章 构建自定义的同步工具
状态依赖性的管理构成前提条件的状态变量必须由对象的锁来保护,从而使他们在测试前提条件的同时保持不变;如果前提条件尚未满足,就必须释放锁,以便其它线程可以修改对象的状态,否则,前提条件就永远无法变成真。在再次测试前提条件之前,必须重新获得锁将前提条件的失败传递给调用者,调用者可以选择休眠等待、自旋等待或者调用Thread.yield可以通过简单的“轮询与休眠”重试机制实现阻塞,同时将前提条件的管理操
Blanchedingding
·
2020-07-10 20:23
书籍阅读
ROS学习笔记26(ROS的命令行工具)
需要说明的是:本篇博客内容来自于《ROS机器人编程从基本概念到机器人应用程序
编程实战
》的第五章,本是打算参考和翻译官网相关资料,但官网资料的质量明显没有这本书描述的更为清楚,记录于此仅仅是为了自己学习和查找的方便
未见鹿
·
2020-07-10 15:25
ROS
Java并发
编程实战
-CopyOnWriteArrayList源码分析
参考:https://www.cnblogs.com/huangjuncong/p/9160713.htmlhttps://www.iteye.com/blog/caoyaojun1988-163-com-1754686Java.util.concurrent包中只有CopyOnWriteArrayList一种并发LIst,且这是一个线程安全的ArrayList,对齐进行修改操作和元素迭代操作都是
zhaojiexiong
·
2020-07-10 14:27
java学习
《Java并发
编程实战
》---性能与可伸缩性
多线程的目标是提升整体性能,提升资源利用率;但是,多线程会引入一些额外的资源消耗,比如:线程之间的协调(加锁、触发信号以及内容同步等)、上下文切换开销、线程的创建与销毁、线程的调度等;关于性能:应用程序的性能可以采用多个指标来衡量,例如服务时间、延迟时间、吞吐率、效率、可伸缩性等,其中一些指标例如服务时间、等待时间等用于衡量程序的运行速度,一些指标例如吞吐率用于衡量程序的处理能力也就是在一定资源的
zhangbinalan
·
2020-07-10 14:38
Java并发编程
【Java并发
编程实战
】-----“J.U.C”:CyclicBarrier
http://www.cnblogs.com/chenssy/p/4932846.html在上篇博客(【Java并发
编程实战
】-----“J.U.C”:Semaphore)中,LZ介绍了Semaphore
zdy0_2004
·
2020-07-10 14:06
java
Java 并发
编程实战
笔记(二)
发布和逸出“发布”一个对象的意思是指,是对象能够在当前作用域之外的代码中使用。当某个不该发布的对象被发布时,这种情况就被称为逸出。线程封闭当访问共享的可变数据时,通常需要使用同步。一种避免使用同步的方式是不共享数据。如果仅在单线程内访问数据,就不需要同步。这种技术就做线程封闭。ad-hoc线程封闭:维护线程封闭性的职责完全由程序实现来承担。栈封闭:只能通过局部变量才能访问对象。不变性满足同步需求的
coco猫
·
2020-07-10 14:26
Java
多线程
java volatile详解
本篇来自java并发
编程实战
关于volatile的总结。要说volatile,先得明白内存可见性。那我们就从内存可见性说起。
我的心里只有你
·
2020-07-10 13:16
基础
java
RSA加密解密算法—
编程实战
本章涉及知识点1、对称加密的概念2、非对称加密的概念3、RSA安全性的奥秘4、RSA秘钥的生成算法5、RSA明文的加密算法6、RSA密文的解密算法7、窃听者破解秘钥的可能性8、python编程模拟信息发送者的行为9、python编程模拟信息接收者的行为10、python编程模拟窃听者破解秘钥的行为11、结果分析12、后记一、对称加密的概念对称加密又称单秘钥加密,它的定义是:通信双方通过同一把秘钥对
PrivateEye_zzy
·
2020-07-10 11:18
c++并发
编程实战
读书笔记——第1章 c++的并发世界
c++11新特性:对多线程的支持,在标准库中为多线程提供组件,使用c++编写与平台无关的多线程程序成为可能。**并发:**在单个系统里同时执行多个独立的任务。**任务切换:**因为任务切换得太快,以至于无法感受到任务的切换。任务切换会给用户和应用程序造成一种“并发的假象”。并发实现的两种方式:1多核机器的真正并行2单核机器的任务切换并发的途径:1**多进程并发:**有多个单线程的进程。将应用程序分
cxycxycxyfighting
·
2020-07-10 11:50
C++面向对象编程
第十一章 性能与可伸缩性 Java并发
编程实战
阅读总结
线程的最主要目的是提高程序的运行性能。线程可以使程序更加充分地发挥系统的可用处理能力,从而提高系统的资源利用率。此外,线程还可以使程序在运行现有任务的情况下立即开始处理新的任务,从而提高系统的响应性。本章将介绍各种分析、监测以及提升并发程序性能的技术。然而,许多提升性能的技术同样会增加复杂性,因此也就增加了在安全性和活跃性上发生失败的风险。更糟糕的是,某些技术的初衷是提升性能,但事实上却与最初的目
weixin_40243947
·
2020-07-10 09:18
并发编程实战
《Java并发
编程实战
》读书笔记——同步的方法、原子类、Unsafe类与CAS
1、同步的方法(1)不在线程之间共享该状态变量(线程私有,如ThreadLocal);(2)将状态变量修改为不可变的变量(final,如果final变量里有可变变量,则不是不可变变量);(3)在访问状态变量时使用同步(synchronized,并发包的很多类,如ReentrantLock、CountDownLatch等等);2、原子类,用CAS自旋+volatile变量实现publicclassA
绕远的偶人
·
2020-07-10 09:32
Java并发
Java并发
编程实战
学习笔记——对象的共享
发布与逸出本章介绍如何共享和发布对象,从而使它们能够安全的由多个线程同时访问。定义。发布:发布一个对象是指使对象能够在当前作用域之外的代码中使用(将一个指向对象的引用保存到其他代码可以访问的地方;在某一个非私有方法中返回该引用;将引用传递到其他类的方法中)。逸出:不该发布的对象被发布时(不想被发布的内部状态(私有,发布会破坏封装性);对象在构造完成前就被发布)。发布对象的方式:1.将对象的引用保存
ArchibaldD
·
2020-07-10 09:21
java并发
编程实战
学习笔记——线程安全性
(以下知识理解和代码来自《Java并发
编程实战
一书》)一些基本概念:1.进程:操作系统为各个独立的进程分配各种资源,包括内存、文件句柄以及安全证书。
ArchibaldD
·
2020-07-10 09:51
《Java并发
编程实战
》-9
第10章避免活跃性危险10.1死锁哲学家问题10.1.1锁顺序死锁如果所有线程以固定的顺序来获得锁,那么在线程中就不会出现锁顺序死锁问题。10.1.2动态的顺序死锁通过锁顺序来避免死锁10.1.3在协助对象之间发生的死锁如果在持有锁时调用某个外部方法,那么将出现活跃性问题。在这个外部方法中可能会获取其他锁(这可能会产生死锁),或者阻塞时间过长,导致其他线程无法及时获得当前被持有的锁。10.1.4开
gonefuture
·
2020-07-10 09:45
读书笔记
【java并发
编程实战
6】AQS之独占锁ReentrantLock实现
前言自从JDK1.5后,jdk新增一个并发工具包java.util.concurrent,提供了一系列的并发工具类。而今天我们需要学习的是java.util.concurrent.lock也就是它下面的lock包,其中有一个最为常见类ReentrantLock,我们知道ReentrantLock的功能是实现代码段的并发访问控制,也就是通常意义上所说的锁。之前我们也学习过一种锁的实现,也就是sync
weixin_33978016
·
2020-07-10 08:37
Chapter 3:共享数据
本章主要介绍《C++并发
编程实战
》的第三章内容。从整体上来看,所有线程之间共享数据的问题,都是修改数据导致的。
HikeForWELL
·
2020-07-10 07:27
视频教程-Python & C/C++联合
编程实战
-Python
Python&C/C++联合
编程实战
夏曹俊:南京捷帝科技有限公司创始人,南京大学计算机硕士毕业,有15年c++跨平台项目研发的经验,领导开发过大量的c++虚拟仿真,计算机视觉,嵌入式图像处理,云安全审计项目
weixin_31360397
·
2020-07-10 07:14
socket
编程实战
-connect超时问题
https://www.cnblogs.com/rockyching2009/p/11032229.html一、背景connect()是会阻塞的。这意味着,作为客户端去连服务器等了好久都得不到相应,业务处理被推迟,更有甚者等到黄花谢了等来个失败(ETIMEDOUT)。二、分析及方案除了超时,其他connect()异常基本上立刻就可以得到反馈,这种处理起来也容易。超时异常之所以让人头疼是因为超时时间
weixin_30826761
·
2020-07-10 07:47
多线程学习笔记(六)线程的安全性问题
----《并发
编程实战
》什么是线程不安全?多线程并发访问时,得不到正确的结果。
weixin_30653097
·
2020-07-10 06:35
Java并发
编程实战
: AQS 源码 史上最详尽图解+逐行注释
Java并发
编程实战
:AQS源码史上最详尽图解+逐行注释引言:学习一个java并发编程工具的时候,我们首先要抓住这三点:状态一般是一个state属性,它基本是整个工具的核心,通常整个工具都是在设置和修改状态
东海陈光剑
·
2020-07-10 05:03
Kotlin
开发者社区
Java并发
编程实战
————恢复中断
在《Java并发
编程实战
》一书第五章p78页,首次提
圣斗士Morty
·
2020-07-10 05:46
Java多线程与并发
Java并发
编程实战
————Executor框架与任务执行
所有的内容均提炼自《Java并发
编程实战
》中第六章的内容。大多数并发应用程序都是围绕“任务执行”来构造的:任务通常是一些抽象的且离散的工作单元。
圣斗士Morty
·
2020-07-10 05:42
Java多线程与并发
Java并发
编程实战
————对象的组合
引言对象的组合,是《JavaConcurrencyinPractice》中第四章引入的课题。这并不是一个并发的概念。为了可以将现有的线程安全组件组合为更大规模的组件或程序,而不是每次内存访问都进行分析以确保程序是线程安全的。这一章将介绍一些组合模式,这些模式可以更容易的使一个类成为线程安全的类,并且维护性更强。一、设计线程安全的类为了在不对整个程序进行分析的情况下就可以得出一个类是否是线程安全类的
圣斗士Morty
·
2020-07-10 05:42
Java多线程与并发
Scala之字符串【一】
本系列的全部内容来源于《Scala
编程实战
》一书。这个系列仅仅将书中对自己工作有用的代码进行了记录,以方便不时之需时进行查询。
BlueWing2000
·
2020-07-10 05:51
Scala
Scala之字符【二】
本系列的全部内容来源于《Scala
编程实战
》一书。这个系列仅仅将书中对自己工作有用的代码进行了记录,以方便不时之需时进行查询。
BlueWing2000
·
2020-07-10 05:51
Scala
Scala
String
Html和JavaScript
编程实战
!
Html和JavaScript
编程实战
1998年,我在学校图书馆里借了一本讲Html语法的书。那时候html和web出现还没多久,中国能够上网也才是刚刚开始的事情。
Mark_YPQ
·
2020-07-10 04:59
java
java并发
编程实战
手册第三章---CountDownLatch使用
一、等待多个并发事件的完成本案例使用CountDownLatch实现,也叫倒计数锁存器(话说,这样不知道对不对),本范例实现视频会议系统,这个视频会议系统将等待所有的参与者都到齐才开始。看源码:1.视频会议类Videoconference/****@authorfcs*@date2015-4-19*描述:等待多个并发事件的完成*说明:可以使用countDownLacth实现,该类是同步辅助类*Co
程序男
·
2020-07-10 03:23
java多线程专题
java并发
编程实战
-并发程序的测试
1,并发测试大致分为两类:安全性测试与活跃性测试。安全性指的是“不发生任何错误的行为”,而活跃性定义为某个良好的行为终究会发生。2,与活跃性测试相关的时性能测试,包括:吞吐量,响应性,可伸缩性。3,正确性测试3.1,首先要找出需要检查的不变性条件和后验条件3.2,基本的单元测试,和串行测试类似3.3,对阻塞操作的测试。一种简单的方式是使用中断,启动一个阻塞操作,等到线程阻塞后再中断他,这要求阻塞方
乔布斯基
·
2020-07-10 03:31
Java并发编程
java并发
编程实战
-性能与可伸缩性1
1,性能与可伸缩性1.1,要想通过并发来获得更好的性能,需要努力做好两件事:更有效地利用现有处理资源,以及在出现新的处理资源时使程序尽可能地利用这些新的资源。1.2,应用程序性能可以采用多个指标来衡量:服务时间,延迟时间,吞吐率,效率,可伸缩性以及容量等1.3,可伸缩性指的是:当增加计算资源时(如:CPU,内存,存储容量或者I/O宽带等),程序的吞吐量或者处理能力能相应地增加1.4,避免不成熟的优
乔布斯基
·
2020-07-10 03:31
Java并发编程
java并发
编程实战
-性能与可伸缩性2
1,减少锁的竞争1.1,在并发程序中,对可伸缩性的最主要威胁就是独占方式的资源锁1.2,有两个因素影响锁上发生竞争的可能性:锁的请求频率,每次持有锁的时间2,缩小锁的范围(快进快出)2.1,通过缩小方法中锁的作用范围,能极大地减少在持有锁时需要执行的指令数量。根据Amdahl定律,这样消除了限制可伸缩的一个因素,因为串行代码的总量减少了2.2,在实际情况中,仅当可以将一些大量的计算或阻塞操作从同步
乔布斯基
·
2020-07-10 03:31
Java并发编程
Java并发
编程实战
读书笔记——第二章线程安全性
提示(点击跳转)2.1什么是线程安全?2.2原子性2.2.1竞态条件2.2.2延迟初始化中的竟态条件2.2.3复合操作2.3加锁机制2.3.1内置锁2.3.2重入2.4用锁来保护状态2.5活跃性与性能Java中主要的同步机制有关键字synchronized,volatile变量,显示锁,原子变量。2.1什么是线程安全?线程安全就是当多个线程访问某个类时,这个类始终都能表现出正确的行为。下面代码展示
唯有一片炙热
·
2020-07-10 00:43
Java学习
websocket网络
编程实战
- 用STOMP协议实现在线群聊聊天室和一对一单聊天室
前言WebSocket是HTML5开始提供的一种在单个TCP连接上进行全双工通讯的协议。它对目前主流浏览器(Chrome,Safari,FireFox,IE等)的主流版本兼容性较好;它可以轻松实现客户端和服务器端双向数据传输和通讯并且支持多种数据通信格式(文本和二进制流),适合于对数据的实时性要求比较强的场景,如通信、直播、共享桌面,特别适合于客户与服务频繁交互的情况下,如实时共享、多人协作等平台
wavebeed
·
2020-07-09 23:36
WebSocket
Stomp
在线聊天
Java并发
编程实战
性能与可伸缩性总结
对性能的思考要想通过并发来获得更好的性能需要努力做好两件事情:更有效地利用现有处理资源以及在出现新的处理资源时使程序尽可能地利用这些新资源性能与可伸缩性应用程序的性能可以采用多个指标来衡量例如服务时间延迟时间吞吐率效率可伸缩性以及容量等可伸缩性指的是:当增加计算资源时(例如CPU内存存储容量或I/O带宽)程序的吞吐量或者处理能力能相应地增加评估各种性能权衡因素避免不成熟的优化首先使程序正确然后再提
qq_26814945
·
2020-07-09 22:38
Java并发
Java并发
31.HTML+CSS3 实现定价卡悬停特效
效果(源码网盘地址在最后)视频演示「前端
编程实战
31」HTML+CSS3实现定价卡悬停特效视频地址一:https://www.bilibili.com/video/BV1mK411W7pG/视频地址二:
前端小智@大迁世界
·
2020-07-09 21:12
CSS创意特效
28.发光复选框特效
效果(源码网盘地址在最后)视频演示「前端
编程实战
28」HTML+CSS3实现发光复选框网页特效视频地址一:https://www.bilibili.com/video/BV1qz411z7Eq/视频地址二
前端小智@大迁世界
·
2020-07-09 21:12
CSS创意特效
Java 并发
编程实战
学习笔记——CountDownLatch的使用
publicclassCountDownLatchextendsObject一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。用给定的计数初始化CountDownLatch。由于调用了countDown()方法,所以在当前计数到达零之前,await方法会一直受阻塞。之后,会释放所有等待的线程,await的所有后续调用都将立即返回。这种现象只出现一次——计数无法被
分布式编程
·
2020-07-09 21:29
多线程-并发
Java并发
编程实战
读书笔记——第三章:对象的共享
第三章:对象的共享如何共享和发布对象,从而使它们能够安全地由多个线程同时访问。3.1可见性在没有同步的情况下,编译器、处理器以及运行时等都可能对操作的执行顺序进行一些问题想不到的调整。在缺乏足够同步的多线程程序中,要想对内存操作的执行顺序进行判断,几乎无法得出正确的结论。3.1.1失效数据在缺少同步的情况下,JAVA内存模型允许编译器对操作顺序进行重排序,并将数值缓存在寄存器中。此外,它还允许CP
AhahaGe
·
2020-07-09 20:31
Java并发编程实战
Java并发
编程实战
读书笔记——第十三章 显式锁
Synchronized,volatile,ReentrantLockReentrantLock不是一种替代内置加锁的方法,而是当内置锁不适用时,作为一种可选择的高级功能。13.1Lock与ReentrantLockLock接口提供了一种无条件、可轮询的、定时的以及可中断的显示锁获取操作。ReentrantLock实现了Lock接口,并提供了与synchronized相同的互斥性和内存可见性。与s
AhahaGe
·
2020-07-09 20:31
Java并发编程实战
Java并发
编程实战
读书笔记——第十一章 性能与可伸缩性
第11章性能与可伸缩性线程的最主要目的是提高程序的运行性能。线程可以使程序更加充分地发挥系统的可用处理能力,从而提高系统的资源利用率。此外,线程还可以使程序在运行现有任务的情况下立即开始处理新的任务,从而提高系统的响应性。本章将介绍各种分析、监测以及提升并发程序性能的技术。然而,它们同样会增加复杂性,因此也就增加了在安全性和活跃性上发生失败的风险。更糟糕的是,它们也可能带来其他的新的性能问题。在开
AhahaGe
·
2020-07-09 20:31
Java并发编程实战
Java并发
编程实战
读书笔记——第五章 基础构建模块
5.1同步容器类同步容器类包括Vector和Hashtable,JDK1.2添加了一些功能相似的类,这些同步的封装器都是由Collections.synchronizedXxx等工厂方法创建的。这些类实现线程安全的方式是:将它们状态封装起来,并对每个公有方法都进行同步,使得每次只有一个线程能访问容器的状态。5.1.1同步容器类的问题同步容器类都是线程安全的,但在某些情况下可能需要额外的客户端加锁来
AhahaGe
·
2020-07-09 20:59
Java并发编程实战
Java并发
编程实战
读书笔记——第一章 简介
第一章简介为什么要使用线程编写并发程序?它们能使复杂的异步代码变得更简单,从而极大地简化了复杂系统的开发。要想充分发挥多核处理器的强大计算能力。1.1并发简史计算机中加入操作系统来实现同时执行多个程序,并且不同的程序都在单独的进程中运行:操作系统为各个独立的进程分配各种资源,包括内存,文件句柄以及安全证书等。如果需要的话,在不同进程之间可以通过一些粗粒度的通信机制来交换数据,包括套接字、信号处理器
AhahaGe
·
2020-07-09 20:59
Java并发编程实战
Java多线程系列--“JUC锁”01之 框架
Java多线程系列-目录[笔记][Java7并发
编程实战
手册]系列目录概要本章,我们介绍锁的架构;后面的章节将会对它们逐个进行分析介绍。
代码有毒 mrcode
·
2020-07-09 20:29
Java多线程系列
《Java并发
编程实战
》第十一章 性能与可伸缩性 读书笔记
造成开销的操作包括:1.线程之间的协调(例如:锁、触发信号以及内存同步等)2.增加的上下文切换3.线程的创建和销毁4.线程的调度一、对性能的思考1性能与可伸缩性运行速度涉及以下两个指标:某个指定的任务单元需要“多快”才能处理完成、计算资源一定的情况下,能完成“多少”工作。可伸缩性:当增加计算资源时(例如:CPU、内存、存储容器或I/O带宽),程序的吞吐量或者处理能力能相应地增加。2评估各种性能权衡
love_world_
·
2020-07-09 19:13
Java基础
多核应用
编程实战
《多核应用
编程实战
》基本信息原书名:Multicoreapplicationprogramming:forwindows,linux,andOracleSolaris作者:(美)戈夫(DarrylGove
iteye_11916
·
2020-07-09 17:14
计算机图书
C++ std::future期值
(本文参照C++在线手册和《C++并发
编程实战
》)0.了解std::futureC++11提供了类模板std::future来访问异步操作结果。
龚建波
·
2020-07-09 16:26
C++
没有结局的开始
C++并发
编程实战
读书笔记——线程间共享数据
Whenitcomesdowntoit,theproblemswithsharingdatabetweenthreadsareallduetotheconsequencesofmodifyingdata.Ifallshareddataisread-only,there’snoproblem,becausethedatareadbyonethreadisunaffectedbywhetherorno
肥叔菌
·
2020-07-09 13:43
并发编程
《java并发
编程实战
》读书笔记——并发应用
1.使用线程池当应用需要处理多个任务时,例如一个Web服务器处理它接收到的请求,可以使用线程池。通过重用现有的线程而不是创建新的线程,可以在处理多个请求时分摊在线程创建和销毁过程中产生的巨大开销。另一个好处是,当一个请求到达时,工作线程通常已经存在,因此不会由于等待创建线程而延时任务的执行,从而提高响应性。通过适当调整线程池的大小,可以创建足够多的线程以便使处理器保存忙碌状态,同时还可以防止过多的
great_smile
·
2020-07-09 10:14
Java基础
Linux下的C
编程实战
(二)----文件系统编程
Linux文件系统Linux支持多种文件系统,如ext、ext2、minix、iso9660、msdos、fat、vfat、nfs等。在这些具体文件系统的上层,Linux提供了虚拟文件系统(VFS)来统一它们的行为,虚拟文件系统为不同的文件系统与内核的通信提供了一致的接口。在Linux平台下对文件编程可以使用两类函数:(1)Linux操作系统文件API;(2)C语言I/O库函数。前者依赖于Linu
xiaobai1593
·
2020-07-09 09:43
linux
文件
编程
linux
c
stream
file
语言
上一页
20
21
22
23
24
25
26
27
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他