zbuf方案一:缺点直接拿结构体当缓冲区,达不到很好的速度

struct DataToSend framedate1;

framedate1.FrameHead[0]=0xAA;
framedate1.FrameHead[1]=0x55;
framedate1.FrameTail[0]=0xA5;
framedate1.FrameTail[1]=0x5A;
//framedate1.FrameLength=161;  暂时未用到不定数据帧
framedate1.FrameType=0xA1;
framedate1.DataType=0xD1;

for (int j=0;j<20;j++)
{
framedate1.SendData[j]=Dealdata.waveBuff[j+i*20];
cout<<" sin  = "<<framedate1.SendData[j]<<"| ";
}


ZBUF_ID zbuf_send;
if((zbuf_send=zbufCreate ())==NULL)
{printf("zbuf_send Creat is Error!\n");}
zbufInsertBuf(zbuf_send,NULL,0,(char *)&framedate1,166,NULL,0);

//if (send(sFdtemp,(char *)&framedate1,166,0)==ERROR)
if( zbufSockSend(sFdtemp,zbuf_send,166,0)==NULL)
{
logMsg("netDATASend: unable to send data !\n",0,0,0,0,0,0);
semGive(semNetCltLink);
break;
}



PS:

在此情况下数据产生畸变。加上zbufClose也是。

如果语句ZBUF_ID zbuf_send;
if((zbuf_send=zbufCreate ())==NULL)
{printf("zbuf_send Creat is Error!\n");}

放在循环之外则只能收到一个循环的数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值