原创 2022-08-05 22:03:13
109阅读
在网络通讯中,由于网络拥挤或一次发送的数据量过大等原因,经常会发生交换的数据在短时间内不能传送完,收发数据的函数因此不能返回,这种现象叫做阻塞。 Winsock对有可能阻塞的函数提供了两种处理方式:阻塞和非阻塞方式。阻塞模式在阻塞方式下,收发数据的函数在被调用后一直要到传送完毕或者出错才能返回。在阻...
转载 2015-05-12 17:08:00
337阅读
2评论
# Python和C++ Socket通讯 ## 前言 在计算机网络中,Socket是一种提供网络通信功能的编程接口和标准,它可以用于不同的编程语言。Python和C++都提供了Socket库,使得开发者能够轻松地使用Socket进行网络通信。本文将介绍Python和C++中Socket通讯的基本原理和用法,并提供一些代码示例来帮助读者更好地理解。 ## Socket简介 Socket可以
原创 2023-08-30 04:44:58
403阅读
在Linux系统中,我们经常会使用C语言来进行网络编程,而Socket编程则是其中非常重要的一部分。Socket编程可以让我们在网络中进行数据传输,实现不同主机之间的通信。而在实际应用中,很多时候需要同时进行多个网络连接,这时就需要使用多线程来处理这些连接,提高程序的并发性能。 在Linux系统中,使用Socket进行网络编程的时候,我们可以通过创建多个线程来处理多个连接,实现程序的多线程并发。
原创 2024-05-06 10:48:52
99阅读
基于C/C++socket通信的后台木马程序什么是socket通信?网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。 建立网络通信连接至少要一对端口号(socket)。socket本质是编程接口(API),对TCP/IP的封装,TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编程接口;HTTP是轿车,提供了封装或...
原创 2021-09-03 09:44:11
4097阅读
实现功能:Ubuntu上通过多线程实现服务器并发给客户端发送文件,携带包头,根据包头信息命名新文件。适用于短连接。问题小结:01. 调用嵌套在结构体中的结构体char 数组成员时,需要动态分配内存。02. 使用select() 监听socket变化。select() 其中三个参数分别监听读,写,出错。03. 每条线程在同时发送文件时,需要使用独立的变量,如accept(), FILE *fd, *
转载 2023-06-09 10:37:14
0阅读
看了Linux程序设计4中文版,学习了多线程编程和socket编程。本文的程序参考自Linux程序设计4的第15章。 设计了一个客户端程序,一个服务端程序。使用TCP协议进行数据传输。客户端进程创建了一个客户端使用的socket,一个socket地址结构体。设置这个socket地址结构体的端口和地址为要连接的服务端的端口和ip。然后使用客户端的socket尝试连接服务端(connect)
基于C/C++socket通信的后台木马程序什么是socket通信?网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。 建立网络通信连接至少要一对端口号(socket)。socket本质是编程接口(API),对TCP/IP的封装,
原创 2022-02-15 10:50:01
1137阅读
#include <stdio.h> #include <Winsock2.h> #pragma comment (lib, "ws
原创 2023-06-01 17:20:16
56阅读
进程和线程: 一个进程至少有一个线程,同一个进程中的多个线程可以并发执行。所谓的并发只是不停的切换,只是电脑切换的太快了,人我们的大脑感觉到是在并发执行。 线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈指针,程序计数器等),但代码区是共享的,即不同的线程可以执行同样的函数。 多线程是指程序中包含多个执行流,即在一个程序中同时运行多个不同的线程来执行不同的任务(代码),也就是说单个程序创
--  作者:心镜--  JAVA中Socket的使用       网络编程基本上就是两台计算机相互通讯数据,底层常用Socket进行数据包的传送。Socket有两种主要的操作方式:面向连接的和无连接的。面向连接的socket操作就像一部电话,他们必须建立一个连接和一人呼叫。所有的事情在到达时的顺序与它们出发时的顺序时
文章目录一、线程二、创建线程pthreand_create()函数pthread_attr_setstacksize()函数pthread_attr_setdetachstate()函数三、锁阻塞锁非阻塞锁死锁 一、线程线程(thread)是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线
 C#是微软随着VS.net新推出的一门语言。它作为一门新兴的语言,有着C++的强健,又有着VB等的RAD特性。而且,微软推出C#主要的目的是为了对抗Sun公司的Java。大家都知道Java语言的强大功能,尤其在网络编程方面。于是,C#在网络编程方面也自然不甘落后于人。
转载 2022-02-22 15:50:34
642阅读
1点赞
C#是微软随着VS.net新推出的一门语言。它作为一门新兴的语言,有着C++的强健,又有着VB等的RAD特性。而且,微软推出C#主要的目的是为了对抗Sun公司的Java。大家都知道Java语言的强大功能,尤其在网络编程方面。于是,
原创 2008-12-05 15:47:00
115阅读
本来打算去虚拟机的server服务器上演示,但是没有设置明白虚拟机和本机的内网IP地址问题,所以就在本机上演示了。 客户机 #pragma comment(lib, "ws2_32.lib") #include <WinSock2.h> #include <stdio.h> #include <st
转载 2020-11-22 23:47:00
193阅读
2评论
这里线程模型是指winsock相关的线程模型设计。在本软件的设计的过程中有些问题是涉及到winsock的问题,为了能够很好的设计线程模型,必须理解清楚socket的内部工作机制。为此,首先从外面开始分析。一、为什么使用多线程1、使用多线程是为了避免应用程序主界面在I/O操作中没有反应,出现假死机现象。Socket是一种特殊的I/O,所以很可能会出现这种现象。例如发送数据,或者连接服务器的时候。2、
socket编程网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket所谓socket通常也称作“套接字”,用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过“套接字”向网络发出请求或应答网络请求socket起源于Uinx,而Unix/Linux基本哲学之一就是“一切皆文件”,都可以用“打开open–>读写write/read–>关闭clos
转载 2023-08-28 17:16:56
252阅读
总结: 服务器端先创建一个socketwatch监控等待客户端连接,客户端连接后循环socketwatch.accept()创建多个通信线程,每个通信线程再创建新的数据处理线程,数据必须循环接收 客户端没有socketwatch,直接创建socket,连接用connect(),发送用socket.send(),接收用receive(),数据也是循环接收的
转载 2023-07-17 21:33:13
73阅读
服务器端 package socket; import java.awt.Color; import java.awt.BorderLayout; import java.awt.event.*; import javax.swing.*; import java.io.*; import java.net.*; class ClientWorker implements Runn
原创 2011-11-05 22:46:14
880阅读
Socket to
原创 2022-09-05 10:27:11
193阅读
  • 1
  • 2
  • 3
  • 4
  • 5