- 浏览: 955147 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (383)
- JSP 自定义标签实现 (1)
- JSP (2)
- javascript (161)
- JAVA (100)
- HTML (26)
- jQuery (11)
- J2EE (1)
- Log4J (1)
- HTML5 (6)
- DB2 (2)
- Spring (14)
- 浏览器兼容 (1)
- JavaMail (1)
- JAVA(转载) (1)
- freemarker (1)
- 项目管理 (1)
- 项目架构学习 (1)
- Oracle (11)
- 开源项目 (2)
- 网络编程 (4)
- C (1)
- C++ (0)
- Xpath (1)
- 待写 (10)
- JXL (1)
- XML (1)
- JNDI (2)
- POI (8)
- Struts2 (3)
- 异常解决方法 (1)
- Sql Server (2)
- windows (2)
- SqlServer (1)
- 前端 (1)
- 正则表达式 (2)
- 浏览器兼容问题 (2)
- 转载 (25)
- css (11)
- svn (5)
- 工程构建 (1)
- 好用的网站 (1)
- sql (3)
- chrome V8 (1)
- javacript 报表 (1)
- FusionCharts (1)
- eclipse (2)
- tomcat (4)
- hibernate (2)
- 硬件 (1)
- 杂烩 (1)
- Linux (1)
- ubuntu (1)
- 设计模式 (2)
- 缓存 (1)
- 数据库 (1)
- JVM (2)
- DOM4j (1)
- 其他 (1)
- JACOB (1)
- extjs (3)
- ligerUi (1)
- 在线HTML编辑器 (1)
- API (1)
- OpenOffice (1)
- webservice (1)
- json (1)
- 百度map (1)
- NodeJs (1)
- greeplum jdbc spring (1)
- easyui (1)
- hightchart (1)
- 游戏 (1)
- HttpClient (1)
- 正则 (1)
- canvas (4)
- HTML5,javascript,canvas (0)
最新评论
-
changelo:
缺少了秦皇岛市
中国省,市,区 json数据 -
yurui829:
解析配置行那等号前后有可能有空格,改为如下比较好:String ...
java 读取.ini配置文件工具类 -
贝塔ZQ:
poi生成excel文档,感觉蛮复杂的,可以试试用pageof ...
POI生成excel带下拉 -
langke93:
我发现greenplum 通过jdbc insert性能很差, ...
jdbc 配置连接greeplum数据,spring配置连接greeplum数据(简单配置学习) -
zhutulang:
哪有收邮件???
Spring 邮件接收发送实例
/**服务端**/ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.net.Socket; public class ThreadServer extends Thread { private Socket server; private BufferedReader reader; private PrintWriter writer; public ThreadServer(Socket socket) throws IOException { server = socket; reader = new BufferedReader(new InputStreamReader( server.getInputStream()));//创建输入流 writer = new PrintWriter(new OutputStreamWriter( server.getOutputStream()));//创建输出流 start(); } public void run() { try { while (true) { String str = reader.readLine();//读取客户端传来的请求 if (str.equals("END")) break; System.out.println("Echoing:" + str); writer.println(str);//打印请求信息 } } catch (IOException e) { } finally { try { server.close(); } catch (IOException e) { } } } /**main启动服务器**/ static final int PORT = 8080; public static void main(String[] args) throws IOException{ ServerSocket server = new ServerSocket(PORT);//启动服务器 System.out.println("Server Started:" + server); try{ while(true){ Socket socket = server.accept();//进入阻塞状态准备接收数据 try { new ThreadServer(socket);//创建服务线程 } catch (IOException e) { socket.close(); } } }finally{ server.close(); } } } /**客户端**/ package com.net; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.net.InetAddress; import java.net.Socket; public class ThreadClient extends Thread { private Socket client;//客户端套接字(浏览器等等) private BufferedReader reader;//输入流 private PrintWriter writer;//输出流 private static int counter = 0;//请求数量 private int id = counter++;//请求id private static int threadcount = 0;//线程数量 public static int getThreadCount() { return threadcount; } public ThreadClient(InetAddress address){ System.out.println("Making client" + id); threadcount ++; try{ client = new Socket(address,MultiJobServer.PORT);//发送请求到指定地址+端口 }catch (IOException e) { } try { reader = new BufferedReader(new InputStreamReader(client.getInputStream()));//初始化输入流 writer = new PrintWriter(new OutputStreamWriter(client.getOutputStream()),true);//初始化输出流 start();//开始线程 } catch (IOException e) { try { client.close(); } catch (IOException e2) { } } } public void run(){ try { for(int i = 0 ; i < 25 ; i ++){ writer.println("Client " + id + ":" + i);//发送请求信息 String str = reader.readLine();//接收返回的信息 System.out.println(str);//打印返回数据 } writer.println("END"); } catch (Exception e) { }finally{ try { client.close(); } catch (IOException e) { } threadcount --; } } static final int MAX_THREADS = 4000;//最大线程数 @SuppressWarnings("static-access") public static void main(String[] args) throws UnknownHostException, InterruptedException { InetAddress address = InetAddress.getByName(null);//得到本机地址 while(true){ if(ThreadClient.getThreadCount() < MAX_THREADS){ new ThreadClient(address);//发送请求 Thread.currentThread().sleep(100);//休眠100毫秒后继续请求 } } } }
发表评论
-
JAVA IO 字节流实现文件copy效率比较
2014-12-24 13:32 3356package jonavin.io; import ... -
EhCache简单例子
2014-10-20 17:04 1193import net.sf.ehcache.Cache; ... -
java 读取.ini配置文件工具类
2014-10-09 16:29 9418import java.io.BufferedReader; ... -
POI读取excel文件通用代码(增强版--支持返回javaBean集合)---2003,2007
2014-09-25 13:21 2950import java.io.File; import j ... -
HttpClient模拟get,post请求并发送请求参数(json等)
2014-09-18 16:33 16949import java.io.IOException; ... -
POI读取Excel通用代码---支持2003,2007
2014-09-18 14:07 2165package com.citics.crm.custome ... -
将数据库树形记录转为java 树形数据结构
2014-08-24 18:36 4796/** * 转换为Tree结构 * @p ... -
java HTML2PDF HTML2DOC THML2Image 后台屏幕截图
2014-08-15 11:22 1304网上找的,下载学习吧。 -
java缓存技术学习
2014-07-25 18:05 5948package com.citics.crm.custome ... -
java unicode 转中文(学习用)
2014-07-10 09:47 1202第一种方式自己实现(笨,但可以知道原理) /** ... -
java+javascript获得两个日期之间的所有月份
2014-05-30 12:29 3284java版 ... -
java开发中有用的工具类
2014-01-03 14:51 0自己备用,不公开 -
java模拟调用Servlet
2013-12-26 13:27 1189public static void main(String ... -
JSOUP 网络爬虫
2013-12-17 10:17 878简单例子学习用 -
javax 邮件发送
2013-10-21 10:20 2472import java.util.Date; import ... -
[JODConverter]word转pdf心得分享(转)
2013-10-10 14:48 1936官方网站: http://www.artofsolving. ... -
java MD5机密工具
2013-09-13 09:33 1236/************************* ... -
JAVA 将文件转换为字节
2013-09-06 10:20 1352package com.tacct.tradecontrac ... -
javaBean转Map工具类
2013-09-05 13:37 9655package com.tacct.tradecontrac ... -
JAVA 操作blob数据然后生成word文件
2013-09-05 11:27 2121import java.io.*; import jav ...
相关推荐
"多线程Socket阻塞模式下通信的例子.rar"可能包含如何在Java或C#中实现多线程处理Socket通信的代码。 6. **Socket应用实例**: - "socket应用小例程.rar"和"Socket开发资料.rar"可能包含了各种Socket编程的实用...
同时,为了提高效率和可靠性,还可以考虑使用异步I/O或多线程技术。 总的来说,"vc有关SOCKET编程例子"是一个实用的学习资源,它涵盖了网络通信的基础知识,帮助开发者理解和实现基于SOCKET的网络应用。无论是创建...
总结起来,C#的Socket多线程编程实例给我们提供了一个非常实用的网络通信解决方案。通过本文的介绍,相信读者已经对C#在网络编程特别是Socket编程方面的应用有了深入的了解,并能够运用这些知识来设计和实现自己的...
标题中的“多线程的例子,超级经典,可以学习学习”表明这是一个关于多线程编程的示例,可能是通过一个具体的项目或代码实例来演示如何在实际应用中使用多线程技术。多线程是计算机程序设计中的一项重要技能,尤其是...
总之,VB2010的SOCKET聊天例子是一个学习网络编程和Socket通信的实用教程。通过这个实例,开发者可以了解到如何在实际应用中使用Socket来实现客户端与服务器之间的双向通信,以及如何设计一个简单的多用户聊天环境。
在局域网聊天应用中,通常会涉及到多线程或异步处理,以便同时处理多个客户端的连接。这可能需要用到`std::thread`库或者Windows的线程API。同时,为了提高用户体验,可能还需要实现文本编码转换、消息分包与重组、...
首先,Java例子大全涵盖了基础语法、面向对象编程、异常处理、IO流、多线程、网络编程、集合框架、数据库操作等多个关键领域。基础语法包括变量声明、数据类型、运算符、流程控制语句(如if、for、while等)等,这些...
理解这些基本概念和操作后,开发者可以进一步学习高级主题,如多线程处理客户端连接、异步SOCKET编程、错误处理以及SSL/TLS安全通信等。这个小例子是一个很好的起点,通过实践和扩展,你可以掌握SOCKET通信的核心...
通过分析和运行这些代码,你可以深入了解Socket编程的具体实现细节,例如如何设置Socket组件,如何处理数据的读写,以及如何在多线程环境中处理并发连接。 总之,"socket传输图片delphi代码例子"提供了一个实用的...
总之,"多线程网络通信演示"是一个实用的C++编程示例,它展示了如何结合TCP协议和多线程技术来构建一个高效的服务器端程序,以处理来自多个客户端的并发连接。通过深入理解并实践这个例子,开发者可以提升在网络编程...
5. **多线程**:Java支持多线程编程,例子会解释如何创建和管理线程,以及同步机制如synchronized关键字和wait/notify方法。 6. **输入/输出流**:Java的I/O系统允许程序进行文件操作和网络通信。书中例子会演示...
【描述】提到的"多线程socket例子"表明此程序可能同时处理多个客户端连接。在多线程环境下,服务器可以同时服务于多个并发的客户端请求,提高了系统的并发处理能力。Java Swing库是Java标准版(Java SE)的一部分,...
除了基本的通信功能,SuperSocket还提供了许多高级特性,如多线程处理、日志记录、会话管理、自定义协议解析等。这些特性使得SuperSocket能够应对各种复杂的网络应用场景,例如聊天服务器、游戏服务器、数据同步服务...
8. **多线程**:在服务器端,通常需要为每个客户端连接创建一个新的线程,以实现并发处理多个客户端请求。这是通过在`ServerSocket`的`accept()`方法上启动新线程来实现的。 9. **性能优化**:了解如何设置Socket...
- **多线程支持**: TCL支持多线程编程。 - **线程创建**: 使用 `thread::create` 命令来创建新的线程。 - **线程同步**: 提供了锁机制来同步线程之间的操作。 #### 例子: ```tcl package require thread thread::...
3. **多线程/多进程**:如果存在,可能涉及到如何处理并发连接,使用多线程或多进程来提高服务器性能。 4. **数据编码与解码**:可能包括如何将业务数据转换为字节流进行网络传输,以及在网络另一端接收后如何恢复...
这篇文章主要讲解了如何在Python3中使用`socket`、`threading`以及`fork`来实现多线程和多进程的简单...同时,对于有经验的开发者,这个例子也提供了一个实用的起点,可以根据需求扩展为更健壮的多线程或多进程服务。
6. **多线程**:Java支持并发编程,通过Thread类和Runnable接口可以创建并管理多个执行线程。习题解答将涵盖同步机制(如synchronized关键字、wait()、notify()方法)和线程通信。 7. **枚举和注解**:枚举是Java中...
此外,Windows Sockets规范还支持多线程的Windows进程,有助于编写出更稳定、高效的程序。 #### 二、Socket编程实例与应用场景 《简明Socket编程指南》不仅阐述了Socket编程的基础知识,还提供了一些实际的编程...