多线程之--等待与通知

wait/notify 等待线程和通知线程是同步在同一对象之上的两种线程 使用过程 //等待 synchronized(object){ //保护条件不成立时,当前线程暂停,进入等待集 while(!保护条件){ object.wait(); } doSomething(); } //唤醒 synchronized(object){ //更新等待线程保护条件涉及的共享变量 updateSharedState(); object.notify(); } 内部实现 Java虚拟机会
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

配置静态路由传送网络包

网络协议的分层 物理层 数据链路层 (MAC) 网络层(IP,TCP) 传输层 会话层 表现层 应用层(HTTP) TCP在三次握手的时候,IP层和MAC层在做什么 TCP没法送一次消息,都会带着IP层和MAC层,IP层和MAC层所有的运行机制都要运行一遍。 网络上的跑的包都是完整的,可以有下层没上层,但不能有上层没下层。 将子网掩码(255.255.255.0)和IP(10.100.122.255)地址按位计算AND得到网络号(10.100.122)。 CIDR(误类型域间选路)10.100
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

LeetCode in Python 213. House Robber II

You are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed. All houses at this place are arranged in a circle. That means the first house is the neighbor of the last one. Meanwhile, adjacent
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

多线程之---线程同步

线程同步 Java平台用于协调线程间共享数据访问的关键字:volatile,synchronized,final,static;机制:锁;API:Object.wait()/Object.ntify() 锁 锁也称互斥锁/排他锁,是控制原本并行访问共享变量的线程改为串行访问,每次访问变量的线程需要持有锁,锁可以被看作一个许可证,持有者才可以通行,线程完成逻辑操作(这里获得锁后执行的代码成为临界区)后将释放锁,给下一个线程持有; 锁导致的问题 开销:上下文切换 锁泄漏:由于程序错误,锁一直被一个
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

canal同步MySQL数据到ES6.X-基本配置

背景:   最近一段时间公司做一个技术架构的更改,由于之前使用的solr和目前的业务不太匹配,具体原因不多说啦。所以要把数据放到Elasticsearch中进行快速的搜索,这是便产生了一个数据迁移的需求,把MySQL数据库中的部分库表放到ES一份,便于快速搜索。明确需求:MySQL数据迁移到ES中。 具体要求:   订单表作为主表,商品表和物流表作为附表,数据迁移到ES的同一个索引中。   方案:利用ES的父子文档类型、canal-server和canal-adapter 环境介绍:   内存
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

Nginx 的 Timeout Wait 解决

1、问题解决办法 查看Nginx并发状态 #netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' TIME_WAIT 2313 SYN_SENT 5 FIN_WAIT1 2 ESTABLISHED 168 FIN_WAIT2 15 SYN_RECV 22 CLOSING 14 LAST_ACK 19 参数解释: CLOSED:无连接是活动的或正在进行 LISTEN:服务器在等待进入呼叫 SYN_R
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

最优布线问题(信息学奥赛一本通 1349)

【题目描述】 学校有n台计算机,为了方便数据传输,现要将它们用数据线连接起来。两台计算机被连接是指它们有数据线连接。由于计算机所处的位置不同,因此不同的两台计算机的连接费用往往是不同的。 当然,如果将任意两台计算机都用数据线连接,费用将是相当庞大的。为了节省费用,我们采用数据的间接传输手段,即一台计算机可以间接的通过若干台计算机(作为中转)来实现与另一台计算机的连接。 现在由你负责连接这些计算机,任务是使任意两台计算机都连通(不管是直接的或间接的)。 【输入】 第一行为整数n(2≤n≤100)
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

Vue.js中 created( ) 与 mounted( )的区别

欢迎一起讨论 Geooo的个人博客:https://geooo.gitee.io/geoooblog/ 观察代码 data:(){ return { name:"", age:"", city:"" } }, created :(){ this.name= "Geooo" this.age = "21" this.city ="东莞" var x = document.getElementById("name")//第一个命令台错误 console.log
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

json基本内容

json的基本信息和历史 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于欧洲计算机协会制定的js规范的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。JSON是Douglas Crockford在2001年开始推广使用的数据格式,在2005年-2006年正式成为主流的数据格式,雅虎和谷歌就在那时候开
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

学习路上的点滴————Ajax知识篇

一.Ajax的介绍   1.AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。   2 .Ajax并不是新的技术,只是把原有的技术,整合到一起而已。     (1)使用CSS和XHTML来表示。     (2) 使用DOM模型来交互和动态显示。     (3).使用XMLHttpRequest来和服务器进行异步通信。     (4)使用javascript来绑定和调用。   3.网页如果想要刷新局部内容。 那么需要重新载入
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

Vue延迟事件执行

欢迎一起讨论 Geooo的个人博客:https://geooo.gitee.io/geoooblog/ 前言 情景1 我们需要将业务功能延时处理 情景2 有时用户需要多次点击事件,短时间内需要多次发送异步请求 情景3 页面加载时需要将控件延时显示给客户观察 补充 我刚看了百度搜索,百度搜索框,你输入一个东西,他会在下面列出搜索联想词。比如你在搜索框快速输入‘abc’这三个字母的时候,他实际上并不是每个字母都发送一次查询。但是你稍微缓慢的输入a、b、c这时候就发送三个查询了。 这时我们需要使用
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

和PHP通用的 DES 加解密类

import java.io.UnsupportedEncodingException; import java.security.InvalidAlgorithmParameterException; import java.security.InvalidKeyException; import java.security.Key; import java.security.NoSuchAlgorithmException; import java.util.Base64; i
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

《大学校内通》技术支持

《大学校内通》是由我们包括后台(PHP)、安卓(andriod)、和苹果(iOS)几个伙伴一块完成,我们的期望用户是各位正在上大学的学生,我们希望来自国内的各位同学能聚集在此,打破地域的限制,在此沟通交流。 您可以与别的学校的同学畅所欲言,您可以展示自己学校的风采。这里为学生与学生之间搭起一座桥梁,让大学无界限。 喜欢的同学们快下载吧,如有任何问题,请联系我们 email:[email protected] tel:17521287837
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

2019牛客暑期多校训练营第一场题解

A.Equivalent Prefixes 传送门 题意:给你两个数组,求从第一个元素开始到第p个元素 满足任意区间值最小的元素下标相同的 p的最大值。 题解:我们可以从左往右记录到i为止每个区间的最小值有哪些,因为每个值都是不一样的,对于当前的 i 如果1~i中每个区间最小值数量相同那么下标肯定也会相同,否则记录的值的数量就会不同,我们可以用单调栈记录目前为止每个区间的“最小值”的下标,栈里面元素数量不同时肯定不满足条件。 代码: #include <bits/stdc++.h> #def
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

github新建分支和相关操作

查看分支 查看本地分支 git branch 查看远程分支 git branch -r 查看所有分支 git branch -a 创建分支 创建本地分支 git branch branch-name 切换到新建分支 git chenckout 分支名 分支push到远程仓库 这个操作会在远程仓库里新建对应的分支 git push origin 分支名 删除分支 删除本地分支 git branch -D 分支名
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

数据结构 树(一)

m叉树从根节点用1开始编号,则第i个节点的第1个孩子节点的编号j j=(i-1)*m+2 https://wenku.baidu.com/view/079df02bdcccda38376baf1ffc4ffe473268fd5b
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

【NOI2011】阿狸的打字机

题面 https://www.luogu.org/problem/P2414 题解 // luogu-judger-enable-o2 #include<cstdio> #include<iostream> #include<cstring> #include<queue> #include<algorithm> #include<vector> #define ri register int #define N 100500 using namespace std; ch
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

传入一个参数 --功能:如果是纯数字的话返回:这是一串数字,如果是英文或者英文加数字,就把所有的英文转化为大写

传入一个参数 --功能:如果是纯数字的话返回:这是一串数字,如果是英文或者英文加数字,就把所有的英文转化为大写 第一种方法:自定义 def lowerToUpper(s): d = {'a': 'A', 'b': 'B', 'c': 'C', 'd': 'D', 'e': 'E', 'f': 'F', 'g': 'G'} #字典未写全 if s.isdigit() == True: return '这是一串纯数字' newS = ""
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

阶段1 语言基础+高级_1-3-Java语言高级_08-JDK8新特性_第1节 常用函数接口_5_函数式接口作为方法的参数案例

Lambda 使用的前提 ,方法的参数必须是一个函数式的接口。 优化版:
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0

Linux性能分析之上下文切换

而在每个任务运行前,CPU 都需要知道任务从哪里加载、又从哪里开始运行,也就是说,需要系统事先帮它设置好 CPU 寄存器和程序计数器 CPU 寄存器,是 CPU 内置的容量小、但速度极快的内存。而程序计数器,则是用来存储CPU 正在执行的指令位置、或者即将执行的下一条指令位置。它们都是 CPU 在运行任何任务前,必须的依赖环境,因此也被叫做 CPU 上下文 CPU 上下文切换,就是先把前一个任务的 CPU 上下文(也就是 CPU 寄存器和程序计数器)保存起来,然后加 载新任务的上下文到这些寄存
分类: 其他 发布时间: 07-31 22:38 阅读次数: 0