
AQS源码详细解读
基础在讲解AQS之前,有几个额外的知识需要了解。知道了这些,才能明白AQS框架中很多代码的道理。CAS相关知识通过标识位进行线程挂起的并发编程范式MPSC队列的实现技巧欢迎加入技术交流群186233599讨论交流,也欢迎关注笔者公众号:风火说。<!--more-->CAS相关知识CAS相关知识具体不表,请百度...
2024-01-10
中了源码的毒,给你一副良药
近期阿宝哥在团队内搞了一个 如何读源码 的专题,主要目的是让团队的小伙伴们了解读源码的思路与技巧。在此期间,阿宝哥也写了 77.9K 的 Axios 项目有哪些值得借鉴的地方、从 12.9K 的前端开源项目我学到了啥 和 如何让你的 Express 飞起来 三篇源码解析的文章。其中前两篇在 掘金社区 获得不错的评价...
2024-01-10
源码阅读笔记
所有集合类,在 for 循环进行删除时,如果直接使用集合类的 remove 方法进行删除,都会快速失败,报 ConcurrentModificationException 的错误,所以在任意循环删除的场景下,都建议使用迭代器进行删除; 我们把数组转化成集合时,常使用 Arrays.asList(array),这个方法有两个坑,代码演示坑为: public void tes...
2024-01-10
C#各类集合汇总
集合(Collection)类是专门用于数据存储和检索的类。这些类提供了对栈(stack)、队列(queue)、列表(list)和哈希表(hash table)的支持。大多数集合类实现了相同的接口。平常在工作中List<T>集合是用的最多的,其次是Array(数组).今天整理一下各类形式的集合,不用就容易忘,必须要记录一下.ArrayArray:...
2024-01-10
CSGO萌新误区集合
CS:GO作为世界主流电竞项目,以出色的平衡竞技体验著称,无论你是久经沙场的FPS老玩家还是初出茅庐的萌新,在刚接触CS:GO这款游戏时都会有或多或少的不习惯,看看CS:GO萌新误区你有没有中枪? 从来没有ECO 在CS:GO中有其独特的经济系统,输掉比分的一方在一开始只能获得极少的经济...
2024-01-10
源码分析之Koa和XHR
对于前端开发者来说,koa和xhr都再熟悉不过了。Koa 是Node.js 的 Web 框架。由 Express 团队设计。旨在提供一个更小型、更富有表现力、更可靠的 Web 应用和API的开发基础。XHR是用来向服务器发送请求的。但我们在使用它们的时候都是直接使用它们的API,似乎忘记了它们原生的底层实现。这篇文章我就来和...
2024-01-10
将易语言源码编译成软件的实操步骤
对于很多易语言新手来说,不知道如何将自己的源码编译成可以直接运行的软件,我来给大家简单的来说介绍一下不论你是自己写的源码还是,从网上下载的源码。都要选择正确的程序打开,所以打开方式一定要正确打开之后再工具栏中找到编译栏打开选择编译栏中的静态编译,鼠标左键单击确...
2024-01-10
易语言源码下载器软件制作
易语言源码一键下载器1、打开易语言 画控件,一个是菜单版,一个是超级按钮的2、写代码3、运行效果总结:以上就是关于用易语言编写下载器的大概步骤,感谢大家的学习和对的支持。...
2024-01-10
最新软件磁力资源商城0.6
资源来源网络,如果需要授权,请大家更换源码,模块仅供学习,如需商用请购买正版授权 感谢5G云网友【jacob】友情提供可乐云商城最新版本,可做实物商城网站无需授权,无后门手机电脑自适应微商城页面可以对接易支付1.更加纯净的后台页面2.修复后台常用功能点不开3.接web全栈开发,web源...
2024-01-10
vue3的动态组件是如何工作的
目录一、组件注册1.1 全局注册1.2 注册全局组件的过程1.3 应用挂载的过程二、动态组件2.1 绑定字符串类型2.2 绑定对象类型三、阿宝哥有话说3.1 除了 component 内置组件外,还有哪些内置组件?3.2 注册全局组件与局部组件有什么区别?注册全局组件注册局部组件解析全局注册和局部注册的组件3.3 动态组...
2024-01-10
基于ElementUI中Table嵌套实现多选的示例代码
前言:写这个是因为帮朋友修改项目中的bug我也是第一次写这个功能,有不对的希望大家指正,如果看完有帮助点个赞!代码中关键是js中Tree的路径查找这个核心,有不懂的自行百度多了不说了,有需要的可以私信找我要代码,来看下我怎么实现的思路:从头开始看这个需求,我们需要知道用到...
2024-01-10
详解Windows10下载mysql的教程图解
mysql版本分为企业版(Enterprise)和社区版(Community),其中社区办是通过GPL协议授权的开源软件,可以免费使用,而企业版是需要收费的商业软件。mysql官网 https://www.mysql.com/ ,进去点击 download下拉滚动到最后,看到 MySQL Community Edition (GPL),点击进去以后点击download进入页面,滚动至最下面,看...
2024-01-10
MAC下修改mysql默认字符集为utf8的方法
1,检查默认安装的mysql的字符集mysql> show variables like '%char%';+--------------------------+--------------------------------------------------------+| Variable_name | Value |+--------------------------+----...
2024-01-10
详解nginx代理socket.io服务踩坑
目录nginx代理了两台socket.io服务器。socket.io的工作模式是polling升级到websocket现象通过nginx请求服务时,出现了大量的400错误,有时候能升级到websocket,有时候会一直报错。但是直接通过 ip+端口 访问时,100%能成功。分析sidsid是我们这个问题的关键。在初始创建连接时(polling模式就是在模拟一个长连...
2024-01-10
JS、CSS和HTML实现注册页面
一个用HTML和CSS实现的注册页面模板,废话不多说了,上代码!更新:使用JavaScript实现用户名和密码表单校验功能。代码如下:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>注册页面</title> <style> *{ margin: 0px; padding: 0px; box-sizing: border-bo...
2024-01-10
Vue+Openlayers自定义轨迹动画
本文实例为大家分享了Vue+Openlayers实现轨迹动画的具体代码,供大家参考,具体内容如下<template> <div class="map-warp"> <h3> <a href="https://openlayers.org/en/latest/examples/feature-move-animation.html?q=polyline" target="_bank" >OpenlayersTrack</a> </h3> <div class="progress-bar"> <div clas...
2024-01-10
解决vue net :ERR_CONNECTION_REFUSED报错问题
我是因为频繁的更换网络,导致这样的。然后我回忆了一下。之前每次改ip都会把Package.json 中的 --host 0.0.0.0改成我的固定ip,由于改来改去太麻烦了,我就设置为0.0.0.0所以喜提上图的一排get请求"dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js --host 0.0.0.0",解决办法把 --host 0.0.0.0 改成...
2024-01-10
Mybatis框架及原理实例分析
摘要本篇文章只是个人阅读mybatis源码总结的经验或者个人理解mybatis的基本轮廓,作为抛砖引玉的功能,希望对你有帮助,如果需要深入了解细节还需亲自去阅读源码。mybatis基本架构mybatis的源码应该算是比较容易阅读的,首先mybatis核心功能就是执行Sql语句,但在其基础上又有许多增强的地方(动态S...
2024-01-10
ActiveMQ基于zookeeper的主从(levelDB Master/Slave)搭建
ActiveMQ 5.9.0新推出的主从实现,基于zookeeper来选举出一个master,其他节点自动作为slave实时同步消息。因为有实时同步数据的slave的存在,master不用担心数据丢失,所以leveldb会优先采用内存存储消息,异步同步到磁盘,所以该方式的activeMQ读写性能最好因为选举机制要超过半数,所以最少需要3台节点,...
2024-01-10
Java Socket实现文件传输示例代码
最近学Socket学上瘾了,就写了一个简单的文件传输程序。客户端设计思路:客户端与服务端建立连接,选择客户端本地文件,先将文件名及大小等属性发送给服务端,再将文件通过流的方式传输给服务端。传输的进度打印到控制台中,直到传输完成。服务端设计思路:服务端接收客户端的请求(阻塞...
2024-01-10
Tomcat启动分析(我们为什么要配置CATALINA_HOME环境变量)
用文本编辑工具打开用于启动Tomcat的批处理文件startup.bat,仔细阅读。在这个文件中,首先判断CATALINA_HOME环境变量是否为空,如果为空,就将当前目录设为CATALINA_HOME的值。接着判断当前目录下是否存在bin\catalina.bat,如果文件不存在,将当前目录的父目录设为CATALINA_HOME的值。根据笔者机器上Tomcat...
2024-01-10
详解Java中字符串缓冲区StringBuffer类的使用
StringBuffer 是一个线程安全的可变的字符序列。它继承于AbstractStringBuilder,实现了CharSequence接口。StringBuilder 也是继承于AbstractStringBuilder的子类;但是,StringBuilder和StringBuffer不同,前者是非线程安全的,后者是线程安全的。StringBuffer 和 CharSequence之间的关系图如下:StringBuffer类和String一样,也用来代...
2024-01-10
java的jdbc简单封装方法
学习了jdbc一段时间后感觉自己写一个简单的封装来试试,于是参考的一些资料就写了一下不是多好,毕竟刚学也不太久首先写配置文件:直接在src下建立一个db.properties文件然后写上内容<span style="font-size:18px;">MysqlDriver=com.mysql.jdbc.Driver MysqlURL=jdbc\:mysql\://localhost\:3306/one User=root Pwd=123456 </span> 之后再...
2024-01-10
解决Java中OutOfMemoryError的问题
目前为止,我遇到使用Tomcat有三种情况:第一,使用Eclipse,在Eclipse中配置Tomcat。第二,直接在Tomcat中部署项目。第三将Tomcat安装为windows服务。在这三种情况下,出现OutOfMemoryError.该怎么解决呢?这里我不得不提我被网上那些不负责任的文章害得很惨。各种设置内存的方法都试了,可就是不起作用。下...
2024-01-10
深入理解Java对象的序列化与反序列化的应用
当两个进程在进行远程通信时,彼此可以发送各种类型的数据。无论是何种类型的数据,都会以二进制序列的形式在网络上传送。发送方需要把这个Java对象转换为字节序列,才能在网络上传送;接收方则需要把字节序列再恢复为Java对象。 把Java对象转换为字节序列的过程称为对象的序列化。把字节序...
2024-01-10
Java基础教程之构造器与方法重载
在方法与数据成员中,我们提到,Java中的对象在创建的时候会初始化(initialization)。初始化时,对象的数据成员被赋予初始值。我们可以显式初始化。如果我们没有给数据成员赋予初始值,数据成员会根据其类型采用默认初始值。显式初始化要求我们在写程序时就确定初始值,这有时很不方便。我们可...
2024-01-10
基于Java回顾之I/O的使用详解
工作后,使用的技术随着项目的变化而变化,时而C#,时而Java,当然还有其他一些零碎的技术。总体而言,C#的使用时间要更长一些,其次是Java。我本身对语言没有什么倾向性,能干活的语言,就是好语言。而且从面向对象的角度来看,我觉得C#和Java对我来说,没什么区别。 这篇文章主要回...
2024-01-10
浅析java双向冒泡排序算法
以整数升序排序为例来简单说明一下双向冒泡排序的过程:首先从前往后把最大数移到最后,然后反过来从后往前把最小的一个数移动到数组最前面,这一过程就是第一轮,然后重复这一过程,最终就会把整个数组从小到大排列好。双向冒泡排序要稍微优于传统的冒泡排序,因为双向排序时数组的两头...
2024-01-10
使用Seppia创建模块化应用程序
摘要: 我们需要一个工具将独立开发的组件整合成一个精心设计的最终产品。这个工具能够协调好体系结构中各个主要的子系统。由于提倡在非常模块化的环境下的快速开发,这个工具应该易于理解。Seppia就是为这些目标设计的。 软件开发已经发生了变化。开发者不再是从头开始开发大型系...
2024-01-10
