网络通信
文章平均质量分 92
离凌寒
这个作者很懒,什么都没留下…
展开
-
对于socket回射函数编写的注意事项。
1.对于readn,writen,readline三个函数都是固定的。2.客户端与服务器间都是主要函数应该加上if判断。如:accpt,listen,bind,connet。3.子进程可以不必在意listen函数,直接退出监听即可。服务器#include <sys/types.h> #include <sys/socket.h>#include <errno.h>#include <stdio.h>#include <原创 2020-11-09 11:38:59 · 124 阅读 · 0 评论 -
tcp通信服务器获取当前时间并发送到客户端
一.tcp通信服务器获取当前时间并发送到客户端。服务器中必定有bind,listen,accept,三个函数。1.在创建套接字时可紧接判断。if((sockfd=socket(AF_INET,SOCK_STREAM,0))<0){perror(“socket error:”);}2.绑定时当判断是否绑定成功。*int bind(int socket, const struct sockaddr address, socklen_t address_len);参数解读(1)套接字(原创 2020-11-04 14:38:41 · 1225 阅读 · 0 评论 -
一.udp通信交流
一.udp通信交流。功能上实现了,通过绑定通信方的ip,进行信息交流。其中通过线程,来实现了收发信息功能。并通过信号捕捉来结束交流。#include <string.h>#include <stdlib.h>#include <pthread.h>#include <sys/types.h>#include <sys/socket.h>#include <signal.h>#include <stdio.h&g原创 2020-11-03 10:39:00 · 142 阅读 · 0 评论 -
使用udp通信建立局域网聊天室(一个服务器下多个客户端进行聊天像是qq的多人会话的效果)。
一.使用udp通信建立局域网聊天室。1.首先udp在传输大型文件时无法保证文件的完整性,会有文件丢失现象。2.在大文件传输上建议还是使用tcp通信更为安全可靠。3.udp在小文件上没问题并且比tcp通信更为快捷简单。4.本通信的建立是通过局域网下进行通信的。udpc.c 客户端文件#include <stdio.h>#include <arpa/inet.h>#include <sys/types.h>#include <sys/socket.h&原创 2020-10-30 11:30:28 · 1285 阅读 · 0 评论 -
守护进程的简单解读
一.守护进程解读1.守护进程就是系统后台运行的程序,就比如系统写日志的过程。2.守护进程的创建守护进程核心一点就是子进程对setsid();调用,取代父进程的会话过程。剩下的就是设置会话。(1) 改变工作目录确保程序路径上不会出现错误。(2)设置文件的掩码。(3)关闭打开的文件描述符。…3.实际上在我看来守护进程和僵尸进程的功能上的区别,在于一个干正事,一个不干正事罢了。#include <stdio.h> #include <stdlib.h> #in原创 2020-10-27 12:01:30 · 214 阅读 · 0 评论 -
对于linux中线程的基本操作
一.线程操作1 . 线程于进程的关系可类比成手指和手的关系。线程相当于手指,进程相当于手。及进程的存在才有了线程,线程就是进程执行程序时对资源调度的基本单位。2.线程创建时常用的函数。3.互斥锁和读写锁目的是保护数据在某些时候不被其他线程所使用造成数据混乱(因cpu会抢占资源)。互斥锁:pthread_mutex_t 变量。pthread_mutex_init(变量地址);初始化phtread_mutex_lock(变量地址);枷锁phtread_mutex_tryloc原创 2020-10-27 11:17:04 · 230 阅读 · 0 评论 -
进程间通信中共享内存实例分析测试
一.共享内存常用函数介绍:1.共享内存的读取操作。#include <stdio.h>#include <sys/ipc.h>#include <sys/shm.h>#include <unistd.h>#include <sys/types.h>#include <string.h>int main(int argc,char **argv){ key_t key=ftok(".",1); if(key原创 2020-10-26 17:29:39 · 210 阅读 · 0 评论 -
进程间通信中消息队列的简单应用
一.消息队列的简单应用1.使用中常使用的四个函数。msggetmsgsnd, msgrcvmsgctl功能实现,recv和server之间的通信交流。recv.c#include <stdio.h>#include <unistd.h>#include <stdlib.h>#include <string.h>#include <errno.h>#include <sys/msg.h>#inclu原创 2020-10-26 14:38:36 · 122 阅读 · 1 评论 -
一.进程间通信中无名管道通信时遇到的阻塞问题时的调试方案。
1.无名管道通信时,遇到的阻塞问题时的测试。由于无名管道有默认的阻塞特性。#include <stdio.h>#include <unistd.h>#include <sys/types.h>#include <sys/wait.h>#include <stdlib.h>#include <string.h>#include <fcntl.h>#include <sys/wait.h>int原创 2020-10-22 10:03:22 · 463 阅读 · 0 评论 -
进程间通信中用有名管道实现两个进程间的通信交流功能
1.主要实现了,lucy进程和pete进程间的通信交流。代码就在这里,我自己在测试时遇到过bug,大家一块交流改进。//pete#include <stdio.h>#include <sys/types.h>#include <sys/stat.h>#include <stdlib.h>#include <fcntl.h>#include <string.h>#include <unistd.h>int原创 2020-10-22 09:36:12 · 382 阅读 · 0 评论