这是大二学JAVA基础时写的一个小程序,通过在程序中设置主机IP和端口实现两台主机间的通信。由于当时对JAVA编程的规范掌握的不是很好,所以程序界面设计代码和通信模块代码都放在了同一个类中。类一:服务器端的代码import java.awt.BorderLayout;import java.a...
分类:
编程语言 时间:
2014-10-22 14:13:14
阅读次数:
189
保证并发安全性的方式有三:不共享、不可变、同步前两种方式相对第三种要简单一些。这一篇不说语言特性和API提供的相关同步机制,主要记录一下关于共享的一些思考。共享(shared),可以简单地认为多个线程可以同时访问某个对象。如果仅仅在单线程内进行访问则不存在同步的问题。保证数据的单线程访问称为线程封闭...
分类:
编程语言 时间:
2014-10-21 21:23:10
阅读次数:
278
同步服务端
同步服务端也相当简单。它需要两个线程,一个负责接收新的客户端,另外一个负责处理已经存在的客户端。它不能使用单线程;等带一个新的客户端是一个阻塞操作,所以我们需要另外一个线程来处理已经存在的客户端。...
分类:
编程语言 时间:
2014-10-21 10:22:06
阅读次数:
324
Android中实现view的更新有两组方法,一组是invalidate,另一组是postInvalidate,其中前者是在UI线程自身中使用,而后者在非UI线程中使用。Android提供了Invalidate方法实现界面刷新,但是Invalidate不能直接在线程中调用,因为他是违背了单线程模型:...
分类:
移动开发 时间:
2014-10-20 13:09:37
阅读次数:
195
1.定义一个Thread的子类2.重写run方法3.在需要的定法创建子类对象4.调用子类对象的start方法(不要调用run方法,调用run就变成单线程了) 1 public class Main { 2 public static void main(String[] args) { 3 ...
分类:
编程语言 时间:
2014-10-19 11:26:24
阅读次数:
170
原文链接最近在看多核编程。简单来说,由于现在电脑CPU一般都有两个核,4核与8核的CPU也逐渐走入了寻常百姓家,传统的单线程编程方式难以发挥多核CPU的强大功能,于是多核编程应运而生。按照我的理解,多核编程可以认为是对多线程编程做了一定程度的抽象,提供一些简单的API,使得用户不必花费太多精力来了解...
分类:
其他好文 时间:
2014-10-18 11:04:51
阅读次数:
232
State Threads——异步回调的线性实现原文链接:http://coolshell.cn/articles/12012.html本文的标题看起来有点拗口,其实State Threads库就是在单线程中使用同步编程思想来实现异步的处理流程,从而实现单线程能并发处理成百上千个请求,而且每个请求的...
分类:
其他好文 时间:
2014-10-16 03:30:11
阅读次数:
599
定义
关于进程与线程的定义 可参看一下这个介绍
http://www.ruanyifeng.com/blog/2013/04/processes_and_threads.html
在不细抠定义的情况下
我们可以认为 在操作系统里一个任务就是一个进程 像word,qq都可以看做一个进程.
另一方面如果这个进程内部的函数调用 就是一条线 那它就是单线程
如果有多条线 那就是多线程 而在这个...
分类:
编程语言 时间:
2014-10-15 16:13:41
阅读次数:
246
地址:http://www.zhihu.com/question/19901763原文:这么解释问题吧:1。单进程单线程:一个人在一个桌子上吃菜。2。单进程多线程:多个人在同一个桌子上一起吃菜。3。多进程单线程:多个人每个人在自己的桌子上吃菜。多线程的问题是多个人同时吃一道菜的时候容易发生争抢,例如...
分类:
编程语言 时间:
2014-10-13 22:26:57
阅读次数:
167
既然说到了nio,就得谈以下几个问题
为什么会出现新io,"旧io"有什么问题吗?
ok,一步一步来,先给大家看几个例子:
1单线程的服务器程序
import java.net.*;
import java.io.*;
public class SocketServiceTest
{
public static void main(String[] args) throws Ex...
分类:
其他好文 时间:
2014-10-13 18:27:57
阅读次数:
403