利用channel实现线程安全的并发求和

package main import ( "fmt" "time" ) var count0 = 0 var count = 0 func main(){ //一百个协程去累加 for i := 0; i &...

2018-12-31 18:49:24

阅读数 81

评论数 0

为什么在A线程中调用B线程的join方法会导致A线程阻塞?

观看源码可以了解到,Thread的join方法利用的是等待/唤醒机制实现的。join中的代码片段:if (millis == 0) { while (isAlive()) { wait(0); } } ...

2018-07-12 12:58:01

阅读数 898

评论数 0

堆实现数学表达式求值(利用逆波兰表达式)

1.表达式求值比较复杂,涉及到运算符的优先级,还有括号的影响,所以需要有一个合适的求值方法来完成,逆波兰式是个最佳选择,逆波兰式就是利用堆的特性来设计的。2.利用堆实现数学表达式求值,代码中主要的方法是initRPN方法和caculate方法,initRPN方法的功能是将输入的表达式(中缀表达式)...

2018-07-11 12:49:57

阅读数 103

评论数 0

通过位运算计算A+B问题,不使用四则运算

这是一个模拟计算机中实现加法器的程序,所有的数加法最后都是在计算机中用二进制的位操作实现 两个一相加会产生进位,所以这个用两个数相与然后左移一位实现进位操作public class APlusB { public static void main(String[] args) { ...

2018-07-08 20:06:35

阅读数 234

评论数 0

求解power of tow问题(判断一个数是否为2的幂次方数)

public class PowerOfTow { public static void main(String[] args) { System.out.println(isPowerOfTow(4)); System.out.println(isPow...

2018-07-07 17:30:23

阅读数 146

评论数 0

偏向锁、轻量级锁、重量级锁的升级

这几个锁之间的关系和升级需要理解,重量级锁的获取和释放的开销比较大,所以不能在任何情况下都加上重量级锁;单线程的情况下锁是可以不需要的,但是需要有应对多线程的方案(锁升级);多个线程争夺锁,如果让一个线程稍微等一等能解决的问题就不要用重量级锁来完成。jvm中的的线程的调度由用户线程是完成不了的,需...

2018-07-06 17:07:47

阅读数 82

评论数 0

冒泡排序

冒泡排序算法思路,前后两个元素两两互相比较将较大或者较小的冒出去,接着进入下一轮循环重复操作需要使用两层循环,第一层循环是控制每一个元素都要进行冒泡,eg:1,2,3,6,4,5 按照降序排列,首先让1冒到后面,然后再让2冒到后面,这个过程需要使用循环来控制第二层循环:看第一层循环的过程,1先和2...

2018-07-04 11:35:41

阅读数 90

评论数 0

在服务器上监控磁盘空间大小并且将警告结果发邮件的实现方案

1.安装邮箱服务器,选择sendmail或者postfix都可以实现(笔者在本地使用的ubuntu,安装的sendmail服务器,线上的是centos并且自带了postfix),安装教程sendmail参考:安装sendmail, 安装postfix参考:安装postfix2.将需要被被监控的磁盘...

2018-06-06 17:27:40

阅读数 1129

评论数 0

spark的combineByKey算子原理详解

val rdd1 = sc.makeRDD(Array(("A", 1), ("A", 2), ("B", 3), ("B", 1), (&quo...

2018-05-01 01:18:38

阅读数 434

评论数 0

mysql跨服务器数据增量同步的解决方案

说明:由于本人的实际情况是不能修改线上对数据引擎的支持,并且只是为了同步部分表,因此没必要将两个库做主从,因此采用以下的方式进行解决对于跨服务器同步增量导数据的问题,本可以使用:select * into outfile "/home/yls/my.log" f...

2018-04-21 17:27:15

阅读数 2484

评论数 0

ubuntu中安装Redis Desktop Manager出现的问题以及解决办法

1.首先下载已经编译好的安装包:https://download.csdn.net/download/tab_yls/103084372. sudo dpkg -i redis-desktop-manager_0.8.3-120_amd64.deb 然后报错:dpkg: 依赖关系问题使得 redi...

2018-03-26 10:42:54

阅读数 1054

评论数 0

ubuntu16.04使用sudo apt-get autoremove导致系统崩溃的解决办法

问题描述:本人安装的是双系统win10+ubuntu,在ubuntu中运行使用的时候想要清除一下软件的依赖包然后运行了一个命令sudo apt-get autoremove,运行完成的时候当时没有什么影响,但是重启之后就出了问题,在gnu grub version 2.02~beta2-36ubu...

2018-03-02 14:28:33

阅读数 2751

评论数 0

程序中对于日期中周的处理

本文是在项目当中遇到问题之后上网查阅之后有所搜获,感谢作者的付出,因此转载:Calendar工具类对跨年的星期的处理个人总结

2018-01-22 20:17:59

阅读数 88

评论数 0

int、Interger的值为什么有时候相等,有时候不相等?

提前需知: 1.Integer有一个常量池,存放着-128~127之间的数值,在这里的数值在用的时候会从这个缓存中取; 2.new Integer(10)类似的不管常量池里面有没有都会从堆中分配一个内存; 3. Integer和int运算的时候会自动拆箱(将Integer拆成int); 4...

2018-01-09 21:34:23

阅读数 412

评论数 0

关于对序列化的理解

纠结这个知识点只是偶然。 最开始从网上看到序列化的原因,说是为了能够持久化和网络传输,其实这样的说法我个人认为不准确,至少我就被误导了,难道没有序列化的就不能够持久化到磁盘就不能够在网络上传输了吗?然后就带着这两个问题寻找答案。 1.数据不管你是否已经序列化,都可以写在磁盘中,并且也可以在网络上传...

2017-11-22 18:13:04

阅读数 260

评论数 0

js自定义方法直接申明式的使用以及在jquery的$(function(){})中使用的区别

有一个A页面,作为公共的初始条件 开始时间 : 结束时间 : zq: cs: fgs: 然后在B页面引入A页面,但是其中的查询条件需要添加一个,所以就想通过jquery的after方法添加,然后直接在js中申明调用,然后却出现了问题 initSelect(); functio...

2017-09-15 18:33:49

阅读数 898

评论数 0

基于maven只整合spring和struts2

1.建好maven项目(参考:http://blog.csdn.net/tab_yls/article/details/72487287) 2.在pom.xml中加入依赖。 <project xmlns="http://maven.apache.org/POM/4.0.0&...

2017-07-12 15:33:57

阅读数 311

评论数 0

在局域网中不能ping通的问题

今天和组员花了大把的时间做了很愚蠢的事情,在进行socket编程的时候发现连接错误,然后各种折腾最后定位错误是系统的原因,然后进行ping链接,但是发现ping不通然后又是各种折腾,重装系统最后还是不能解决问题,然后组员在手误的情况下ping错了一个ip然后发现可以ping通,于是问题才渐渐明了,...

2017-07-06 20:49:11

阅读数 435

评论数 0

java中的main函数

每个java应用程序都要有一个程序入口,最简单的java程序是就是hello word。main函数中有一个参数args一直很迷,现在用个例子明白了。它是使用java命令运行的时候给程序添加参数用的,例如: 如上图可以知道,运行的时候加上类名,然后加空格再加参数如果多个参数则用空格分...

2017-06-28 21:01:15

阅读数 165

评论数 0

java在命令行下编译带有package命名空间的项目

package com.study.java.net.test; import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; public class SocketRec...

2017-06-26 19:05:32

阅读数 186

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭