- 博客(20)
- 资源 (9)
- 收藏
- 关注
原创 java线程:并发协作的经典之生产消费者模型
Java线程:并发协作-生产者消费者模型对于多线程程序来说,不管任何编程语言,生产者和消费者模型都是最经典的。就像学习每一门编程语言一样,Hello World!都是最经典的例子。实际上,准确说应该是“生产者-消费者-仓储”模型,离开了仓储,生产者消费者模型就显得没有说服力了。 对于此模型,应该明确一下几点: 1、生产者仅仅在仓储未满时候生产,仓满则停止生产。 2、消费者仅仅在仓储有产品时候才
2017-08-31 15:34:49 246
原创 java多线程共同工作,利用synchronized关键字
做的东西下面的代码实现了一个模型,那就是开了五个线程,大家共同维护一个状态,一起数数,一直到有人数到1500为止。思路把数数的那部分代码同步(synchronized),同步之后五个线程每次都进去数数都有锁的状态,然后找到当时对应的变量,然后+1输出自己的状态,最后到count变量为1500时,停止输出。注意事项注意开的线程必须来自于不同的对象,不然的话锁就是相同的,这样的话最后锁被一个线程所占据,
2017-08-31 15:11:03 397
转载 java中synchronized的作用
下面的这篇文章介绍的非常具体原文:http://blog.csdn.net/luoweifu/article/details/46613015作者:luoweifu转载请标名出处
2017-08-31 14:33:20 315
原创 JAVA多线程编程
具体看下面的链接,这个链接讲的非常的详细,看完了大概大多数的都明白了http://lavasoft.blog.51cto.com/62575/27069/
2017-08-31 10:04:32 208
原创 哈工大计算机学院实验室的情况介绍
前言本来博主不想写这个东西的,寻思着自己知道就好了,但是一想到要有一种前人栽树,后人乘凉的精神,所以我决定把这个写出来,方便大家以后参考。因为在读研究生的时候你如果想进行学术上的深造,那么选对实验室,选对老师都特别的重要。然后郑重声明,我只是描述我个人查资料以及跟各位老师接触所得出的信息,仅代表个人意见,只是站在学生的角度帮助各位学弟学妹门参考,希望学弟学妹们能够选到自己喜欢的实验室,做自己喜欢的工
2017-08-29 23:42:06 13790 14
原创 java Socket编程,多线程异步编程
最近在学习分布式,分布式的前提是要知道网络服务器的通信,自己对这一块基本不了解,最近学习了一下,整理一个demo,方便以后查阅这个是关于TCP/BIO,所谓BIO就是阻塞IO,没收到消息时就处于阻塞状态,有消息就工作,我用了多线程来处理收消息和发消息,实现了异步发送 服务器端代码: 1 package internetCommunication; 2 3 import
2017-08-29 13:24:06 808
原创 Socket传中文乱码问题的解决
socket服务端和客户端编码方式不一致将有可出现中文乱码问题,因此两边设成一样的就可以了socket服务端发送数据时设置编码方式PrintWriter output = new PrintWriter(new OutputStreamWriter(socket.getOutputStream(),"UTF-8"),true);output.println("你好");
2017-08-29 10:36:15 40304 1
转载 [java]:对象序列化非常简单能看懂的操作
就看这个绝对能看懂!!!!import java.io.*;import java.util.Date;public class ObjectSaver { public static void main(String[] args) throws Exception { /*其中的 D:\\objectFile.obj 表示存放序列化对象的文件*/
2017-08-28 17:00:11 291
转载 java串行化技术
java串行化技术的实质就是把一个对象的状态写进一个Byte流里面,然后再通过Byte流反解出来该数据Java串行化技术可以使你将一个对象的状态写入一个Byte流里,并且可以从其它地方把该Byte流里的数据读出来,重新构造一个相同的对象。这种机制允许你将对象通过网络进行传播,并可以随时把对象持久化到数据库、文件等系统里。Java的串行化机制是RMI、EJB等技术的技术基础。用途:利用对
2017-08-28 16:04:02 350
转载 java-Socket通信,同时进行Json数据的传递
服务端import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.net.ServerSocket;import
2017-08-28 15:33:40 1320
转载 使用Socket类连接服务器判断一台主机有哪些端口被打开
package mysocket;import java.net.*;public class MyConnection1 extends Thread{ private int minPort, maxPort; public MyConnection1(int minPort, int maxPort) { this.mi
2017-08-28 12:08:36 1200
原创 如何解决更新被拒绝,因为远程版本库包含您本地尚不存在的提交。这通常是因为另外 提示:一个版本库已向该引用进行了推送。再次推送前,您可能需要先整合远程变更 提示:(如 'git pull ...')。
error: 无法推送一些引用到 'https://github.com/***'提示:更新被拒绝,因为远程版本库包含您本地尚不存在的提交。这通常是因为另外提示:一个版本库已向该引用进行了推送。再次推送前,您可能需要先整合远程变更提示:(如 'git pull ...')。提示:详见 'Git push --help' 中的 'Note about fast-forwards' 小
2017-08-24 14:38:30 11867 1
转载 TCP协议-RST报文
RST:(Reset the connection)用于复位因某种原因引起出现的错误连接,也用来拒绝非法数据和请求。如果接收到RST位时候,通常发生了某些错误;发送RST包关闭连接时,不必等缓冲区的包都发出去,直接就丢弃缓冲区中的包,发送RST;接收端收到RST包后,也不必发送ACK包来确认。何时发送RST1:如果连接是CLOSE状态,所有收到的包都响应RST,仍然保持CLOSED状态
2017-08-22 16:48:20 1862
转载 linux中的内核同步机制
Linux设备驱动中必须解决的一个问题是多个进程对共享资源的并发访问,并发访问会导致竞态,linux提供了多种解决竞态问题的方式,这些方式适合不同的应用场景。 Linux内核是多进程、多线程的操作系统,它提供了相当完整的内核同步方法。内核同步方法列表如下:=========================内核中采用的同步技术: 中断屏蔽原子操作 (分为整数原子操作和
2017-08-22 11:24:36 564
转载 教你如何计算海明码
以下是笔者一节视频课程中的PPT内容,细致而又非常通俗地讲解了海明码的编码计算、检测错和纠错原理,如果因为PPT比较简洁看不明白,可结合我的视频来看,本节课程的视频链接如下(可免费观看,我全部课程5折抢购中!):http://edu.51cto.com/lesson/id-21540.html一、海明码检错/纠错基本思想 海明码(Hamming Code)是一个可以有多个校验位,具有检测并
2017-08-17 10:27:51 3206 1
转载 海明码的详解
1. 计算校验位数 要使用海明码纠错,首先就要确定发送的数据所需要要的校验码(也就是“海明码”)位数(也称“校验码长度”)。它是这样的规定的:假设用N表示添加了校验码位后整个信息的二进制位数,用K代表其中有效信息位数,r表示添加的校验码位,它们之间的关系应满足:N=K+r≤2r-1。 如K=5,则要求2r-r≥5+1=6,根据计算可以得知r的最小值为4,也就是要校验
2017-08-17 10:26:37 1014
转载 史上最邪恶的linux shell脚本
脚本下载地址 https://github.com/mathiasbynens/evil.sh/blob/master/evil.sh这是一个 bash shell 脚本,其中有若干可以整蛊(结仇)你的同事的小技巧——或者说恶作剧。看完之后,感觉不寒而栗,要是谁敢这样整我,我一定和他绝交!警告,切勿在生产环境体验,一切后果脚本作者和本文作者均不不承担!警告,切勿在生产环境体验,一切
2017-08-10 13:23:56 636
转载 C编程之memcpy函数详解(附带几个例子)
函数原型void *memcpy(void*dest, const void *src, size_t n);功能由src指向地址为起始地址的连续n个字节的数据复制到以destin指向地址为起始地址的空间内。头文件#include返回值 函数返回一个指向dest的指针。说明 1.source和destin所指内存区域不能重
2017-08-03 10:35:54 2043
原创 [linux脚本]:linux脚本之提醒程序员及时来起身动一下
将这段代码保存,然后运行即可,就可以实现一个半小时,电脑右上角弹出来一个框提示您辛苦了需要休息的对话框消息代码如下:#!/bin/bash#while true#do realtime=`date +%H:%M` #echo "这条提供关键信息,时间为$realtime" if test $realtime != "14:32" then #就在
2017-08-01 13:39:30 439
转载 [linux]:linux执行定时提醒任务
当我们需要一些自动定时提醒或者每天下班自动执行备份,定期自动重启某些服务清理某些缓存时,如何在大Linux上使用几句shell命令完成实现这份任务的自动化呢? notify-send和crontab的结合就可以轻松实现定时执行,自动弹出通知提醒等。shell命令notify-send 程序包libnotify-bin为X桌面系统提供了向桌面发送通知的功能,Ubuntu 9.04之后已经自带
2017-08-01 10:30:36 1684
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人