转载:JUC AQS ReentrantLock源码分析(一)

Java的内置锁一直都是备受争议的,在JDK1.6之前,synchronized这个重量级锁其性能一直都是较为低下,虽然在1.6后,进行大量的锁优化策略,但是与Lock相比synchronized还是存在一些缺陷的:虽然synchronized提供了便捷性的隐式获取锁释放锁机制(基于JVM机制),但是它却缺少了获取锁与释放锁的可操作性,可中断、超时获取锁,且它为独占式在高并发场景下性能大打折扣。 如何自己来实现一个同步 自旋实现一个同步 volatile int status=0;//标识--
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

文本序列化【通用】word2sequence

''' 文本序列化 ''' class WordSequence(): UNK_TAG = "<UNK>" PAD_TAG = "<PAD>" UNK = 1 PAD = 0 def __init__(self): self.dict = { self.UNK_TAG:self.UNK, self.PAD_TAG:self.PAD } self.count
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

安装lunarsolarconverter第三方库提示:ERROR: Command errored out with exit status 1: python setup.py egg_info Check th e logs for full command output.

在安装lunarsolarconverter第三方库时提示: File "<string>", line 1, in <module> File "C:\Users\Administrator\AppData\Local\Temp\pip-install-wr4z978d\Lunar SolarConverter\setup.py", line 15, in <module> long_description = f.read() Unicode
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

从零开始学习SQL SERVER(1)--- 了解SQL

SQL是什么 SQL (发音为 sequal [' sikwəl ' ]) SQL指 Structured Query Language 结构化查询语言,是用于访问和处理数据库的标准的计算机语言。 数据库又分为许多种,包括:MySQL、SQL Server、Access、Oracle、Sybase、DB2等其他数据库系统。 SQL能干什么 SQL可以创建新的数据库及其对象。 SQL可以修改现有数据库的结构。 SQL可以从数据库中删除对象。 SQL可以Truncate(删除)表中的所有记录。 S
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

孤荷凌寒自学python第九十二天认识区块链006

【主要内容】 今天继续学习flask这个模块的用法,共用时间60分钟。 (此外整理作笔记花费了约60分钟) 详细学习过程见文末学习过程屏幕录像。 初步了解了flask模块的用法,见识了Python中关于web服务器程序建构模块的强大功力。 主要通过以下网络资源进行学习: http://docs.jinkan.org/docs/flask/quickstart.html 【学习笔记】 一、Flask创建的服务器对象运行时可以指定相关参数 if __name__=="__main__": from
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

毕设进度06

不管怎么样,英语论文今天完成了,接下来几天可以全身心投入做专业毕设了。 接下来要完成的几个模块 1.专家主界面:日常快译和专业翻译两个模块的支付订单信息:下单日期,订单号,订单内容,翻译类型,支付状态,翻译状态,操作 2.我的订单界面:按全部,报价中,已付款,翻译中,已完成分类显示,其次显示每条订单信息,同上 3.优化社区模块,评论功能,积分累计功能 4.管理员主界面:审核管理员信息、沟通专业翻译报价 5.专家信息上传:姓名、性别、照片、证件号码、出生日期、英语级别、翻译佐证材料、联系方式、邮
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

Kafka系列2:深入理解Kafka消费者

Kafka系列2:深入理解Kafka消费者 上篇聊了Kafka概况,包含了Kafka的基本概念、设计原理,以及设计核心。本篇单独聊聊Kafka的消费者,包括如下内容: 生产者是如何生产消息 如何创建生产者 发送消息到Kafka 生产者配置 分区 生产者是如何生产消息的 首先来看一下Kafka生产者组件图 (生产者组件图。图片来源:《Kafka权威指南》) 第一步,Kafka 会将发送消息包装为 ProducerRecord 对象, ProducerRecord 对象包含了目标主题和要发送的内容
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

毕业设计之LVS+keealive 负载均衡高可用实现

环境介绍 centos6.9最小化安装 主机名 IPADDR lvsA.load.quan.bbs 192.168.111.131 lvsB.load.quan.bbs 192.168.111.132 webone.quan.bbs 192.168.111.141 webtwo.quan.bbs 192.168.111.142 lvsA.load.quan.bbs和lvsB.load.quan.bbs上都进行的操作 [[email protected] ~]$yum install
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

多字节与Unicode

编码知识 一、Unicode与多字节 (1)Windows中,Unicode也称为宽字节,多字节也称为窄字节; VS中默认使用Unicode编码,在项目属性>>配置属性>>常规>>字符集中可选择Unicode字符集或者多字节字符集 (2) Unicode与多字节函数版本、字符、字符串类型的区别 Win32 API中大部分参数有字符串的函数都有两个版本 以A结尾,代表多字节版本 以W结尾,代表Unicode版本 根据版本自动选择的 如:CreateEventA 如:CreateEventW 如:
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

Java虚拟机笔记 002 对象

对象 对象的创建 类加载检查 遇到字节码new指令,检查指令的参数是否能在常量池中定位一个类的符号引用,检查这个符号引用代表的类是否已经加载、解析和初始化过,如果没有则进行类加载; 内存分配 为新生对象分配内存 指针碰撞(Bump The Pointer) 假设Java堆中的内存绝对规整,所有使用过的内存放在指针一边,未使用过的内存在另一边,需要内存时指针向未使用区域移动 空闲列表(Free List) 假设Java堆中空闲和已用内存混在一起,需要JVM维护一个列表,分配时在空闲列表找寻足够大
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

MyBatis学习笔记02_搭建MyBatis工作环境

目录 搭建MyBatis工作环境 入门程序搭建与测试 数据库准备 搭建工程环境 数据库连接池配置文件 编写SQL映射配置文件 编写实体类和测试类 入门程序数据操作 模糊查询 - selectList 增加用户 - insert 修改和删除实体 搭建MyBatis工作环境 动手开发MyBatis入门程序 数据交互层(DAO)的传统写法 使用MyBatis动态代理简化数据交互层(DAO)的写法 入门程序搭建与测试 开发步骤:创建工程、引入依赖Jar包、搭建日志输出环境、配置数据库连接池、创建持久层
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

Java中的位运算符与使用技巧总结

1. (^) 异或运算符 运算规则:对两个操作数进行位的异或运算。【相同取0,相反取1】。即两操作数相同时,互相抵消。 使用技巧: (1)交换数值。 int a = 10;int b = 20 ===> a^b^a == b, a^b^b == a 1 int f = 50; 2 int g = 60; 3 4 f = f^g; 5 g = f^g; 6 f = f^g; 7 System.out.println(f+" "+g); 8 9 输出结果是:60 50 View Cod
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

RL

Observer /* 参数 1:分配该 observer 对象的内存空间 参数 2:设置该 observer 监听什么状态 参数 3:是否每次需要监听 参数 4:用于设置该 observer 的优先级,一般是0 参数 5:用于设置该 observer 的回调函数 参数 6:observer 的运行状态 */ CFRunLoopObserverRef observer = CFRunLoopObserverCreateWithHandler(CFAllocatorGetDefau
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

四大绝

四大绝:焊雷管、锯灯泡、精修处女膜、火补避孕套。 四大闲:大款的媳妇、贪官的钱、和尚的鸡8、调研员。 四大黑:人民法院、交警队、东北娘们、黑社会。 四大白:天上云、地上霜、大姑娘的屁股、白菜梆。 四大红:山庙的门、刹猪的盆、大姑娘裤衩、火烧云 。 四大绿:青草地、西瓜皮、王八盖子、邮电局。 四大经的起折腾:伊拉克、南联盟、坐台小jie、110。 四大快:闪电、流星、骑马、射精。 四大硬:墙上砖、门上栓、夜里鸡8、电线杆。 四大软:香蕉皮,烂鸭梨,老头JB,任贤齐 四大紧:手铐、脚镣、奶罩、避孕
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

IDEA(社区版)+Maven+Tomcat搭建JavaWeb开发环境

和更方便的商业版相比,用 IDEA(社区版) 开发 JavaWeb 项目时,少了一些插件,所以需要用户手动配置 感谢各位前辈留下的博客,但是百度上太多了,找的麻烦,还是看自己写的好,反正坑也是坑自己(估计别人不会看到) 网上还有很多教程,写的很好可以去看看 ------------------------------------------------------------ 下面是教程 -----------------------------------------------------
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

Egret EUI Tab + ViewStack

参考: Egret教程-选项卡 游戏中很多选项卡的UI。 官网教程说的不清楚。以前是用自己写的。这里用Eui的Tab+ViewStack实现一下。 1. 新建Tab的条目皮肤 第一个Image是按钮弹起时显示 第二个Image是按钮选中时显示 第三个Label的标签设置为{data},用于显示ViewStack的内容name 进入exml的源码,设置第一张图片visible.down="false",设置第二张图片visible.disabled="false", visible.up="fa
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

scrapy爬虫框架(三)

scrapy爬虫框架(三) 使用导出器来优化存储方式 使用JsonItemExporter模块 pipelines.py from scrapy.exporters import JsonItemExporter class QsbkspiderPipeline(object): def __init__(self): # 初始化方法 # 使用二进制来写入,因此“w”-->"wb" self.fp = open("duanzi2.json", "w
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

04标识符和关键字

1,标识符规则   ①字母数字下划线组成   ②数字不能开头   ③不使用关键字 2,驼峰命名法   ①小驼峰命名法,第一个单词首字母小写,第二个单词首字母大写     如:myName, aDog   ②大驼峰命名法:每一个单词首字母大写     如:FirstName, LastName   ③用下划线来连接单词的命名法:     如:user_login 3,关键字   可以在Python Shell通过命令进行查看当前系统中python的关键字   >>>import keyword
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

leetcode| 190. 颠倒二进制位

颠倒给定的 32 位无符号整数的二进制位。 示例 1: 输入: 00000010100101000001111010011100 输出: 00111001011110000010100101000000 解释: 输入的二进制串 00000010100101000001111010011100 表示无符号整数 43261596, 因此返回 964176192,其二进制表示形式为 00111001011110000010100101000000。 示例 2: 输入:1111111111111111
分类: 其他 发布时间: 02-16 23:17 阅读次数: 0

IOC原理及自定义框架实现IOC功能(一)

IOC介绍IOC全称是控制反转(Inversion of Control),又名依赖注入,其实这两个Java
分类: 其他 发布时间: 02-16 23:01 阅读次数: 0