资源简介
使用消息队列与共享内存完成一个简单的终端聊天程序
代码片段和文件信息
#include “public.h“
void *login_ptr = NULL;
void signal_login(int signo)
{
int i = 0;
printf(“new user login\n“);
char login_head[100] = {0};
memcpy(login_headlogin_ptr100);
printf(“current online users:\n“);
for (i = 0;i < 100;i++)
{
//表示被使用,有数据
if (login_head[i] == 1)
{
int pos = 100 + sizeof(int) * i;
int pid = 0;
memcpy(&pid(char*)login_ptr + possizeof(int));
printf(“ %d “pid);
}
}
printf(“\n“);
}
int main()
{
signal(SIGUSR1signal_login);
//登录消息
//创建一个登录消息队列
int msg_login_id = msgget((key_t)0001IPC_CREAT | 0766);
if (msg_login_id < 0)
{
printf(“create msg error!“);
return 0;
}
//打开在线用户共享内存
int shmid = shmget((key_t)123400);
if (shmid < 0)
{
printf(“open shm error!“);
}
//映射逻辑地址
login_ptr = shmat(shmidNULL0);
LOGIN_T login;
memset(&login0sizeof(LOGIN_T));
login.type = 1;//表示登录
login.pid = getpid();
//发送登录数据
int ret = msgsnd(msg_login_id(void*)&loginsizeof(LOGIN_T)-sizeof(long)0);
if (ret < 0)
{
printf(“send login msg error!“);
return 0;
}
while (1)
{
sleep(1);
}
return 0;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2016-08-05 00:10 IPC_chat\
目录 0 2016-08-05 10:29 IPC_chat\IPC_chat\
文件 1567744 2016-08-05 10:29 IPC_chat\IPC_chat.ncb
文件 890 2016-08-05 00:10 IPC_chat\IPC_chat.sln
文件 11264 2016-08-05 10:29 IPC_chat\IPC_chat.suo
文件 1202 2016-08-05 10:29 IPC_chat\IPC_chat\client.cpp
文件 4042 2016-08-05 08:56 IPC_chat\IPC_chat\IPC_chat.vcproj
文件 1415 2016-08-05 10:29 IPC_chat\IPC_chat\IPC_chat.vcproj.lenovo-PC.lenovo.user
文件 385 2016-08-05 08:58 IPC_chat\IPC_chat\public.h
文件 29016 2016-08-05 10:25 IPC_chat\IPC_chat\server
文件 1520 2016-08-05 10:29 IPC_chat\IPC_chat\server.cpp
相关资源
- IPCJEDECJ-STD-020D.1.pdf
- 支持并发的多人聊天程序
- Mini PCIe 标准协议
- ONVIF协议实现搜索局域网IPC设备+RTSP地
- 自己画的miniPCIE AD16封装 已经打样
- miniPCI-E 模块和底座接口封装
- ublox ZED-F9P 网络差分接收机NTRIPCLIENT连
- ios电信ipcc
- IPC-A-600J CHINESE 印制板的可接受性中文
- cudnn-10.0-windows10-x64-v7.6.4.38.zipcuda_10.
- Linux-IPC-进程间通信
- ipcc 38.0+37.0.zip
- 爱立信PCRF配置说明-全
- ISE fft ipcore V7.1 c model
- allegro出gerber文件、ipc文件、钻孔文件
- 进程间通信IPC消息机制
- 利用WipCap捕获网络数据包并分析数据
- 常用网络命令的使用 ipconfig ping ARP
- 项目-银行账户管理系统linux C编程和
评论
共有 条评论