tuxedo 跪求 在线等待 高手

windows_java 2014-04-15 09:26:54
FBFR32 *sendbuf, *rcvbuf;
string strResult;
tuxputenv("WSNADDR=//192.168.1.12:8080");
int i,j;
if ((i=tpinit(NULL))<0)
{
(void) fprintf(stderr, "Tpinit failed\n");
exit(-1);
}

sendbuf=(FBFR32 *) tpalloc("FML32",NULL,10000);
rcvbuf=(FBFR32 *) tpalloc("FML32",NULL,10000);

if (Fadd32(sendbuf,CODE,"A1021", 0) == -1)
{
(void)fprintf(stderr, "Failure to change CODE field -- %s\n",
tpfree(sendbuf);
tpfree(rcvbuf);
tpterm();
exit(1);
}
if (Fadd32(sendbuf,CODEID,"100001", 0) == -1)
{
(void)fprintf(stderr, "Failure to change CODEID field -- %s\n",
Fstrerror32(Ferror32));
tpfree(sendbuf);
tpfree(rcvbuf);
tpterm();
exit(1);
}
if (Fadd32(sendbuf,CODENAME,"wwwww", 0) == -1)
{
(void)fprintf(stderr, "Failure to change CODENAME field -- %s\n",
Fstrerror32(Ferror32));
tpfree(sendbuf);
tpfree(rcvbuf);
tpterm();
exit(1);
}
Fprint32(sendbuf);
i = tpcall("QUERY", (char *)sendbuf, 0, (char **)&rcvbuf, &j,TPNOBLOCK);
if(i < 0)
{
(void) fprintf(stderr, "Can't send request to service \n");
(void) fprintf(stderr, "Tperrno = %d\n", tperrno);
tpfree(sendbuf);
tpfree(rcvbuf);
tpterm();
exit(1);
}
char * strCODE;
char * strCODEID;
char * strCODENAME;
memset(strCODE,0,sizeof(strCODE));
memset(strCODEID,0,sizeof(strCODEID));
memset(strCODENAME,0,sizeof(strCODENAME));

Fprint32(rcvbuf);

Fget32(rcvbuf,CODE,i,(char *)strCODE,0);
Fget32(rcvbuf,CODEID,i,(char *)strCODEID,0);
Fget32(rcvbuf,CODENAME,i,(char *)strCODENAME,0);

tpfree((char *)my_str);
(void)tpterm();

问题:

i = tpcall("QUERY", (char *)sendbuf, 0, (char **)&rcvbuf, &j,TPNOBLOCK);
此函数执行就会出现一直停在这,不报错。
查看服务端。 调用成功,也有返回。 但是客户端一直停在这个函数里。
也就是说
rcvbuf 这个拿不到值。


我用异步调用

ret = tpacall("QUERY", (char *)sendbuf, 0, 0);


if(tpgetrply(&ret,(char **)&rcvbuf, &rcvlen, (long)0)== -1)
userlog("tpgetrply() failure:cd=%ld,errstr=%s\n",ret,tpstrerror(tperrno));


tpgetrply
这个函数会一直停在这。 不报错。 和这个tpcall一样。

哪位tuxedo 大神,知道什么原因。求赐教。。。。

万分感谢。









...全文
259 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
laowang2 2014-05-26
  • 打赏
  • 举报
回复
tuxedo 这么高大上的东西,我也不会 ,帮你顶顶
wryyu 2014-05-26
  • 打赏
  • 举报
回复
表示不懂。。。
缘中人 2014-05-26
  • 打赏
  • 举报
回复
http://bbs.csdn.net/topics/350010802 资料很少,你再找找其他的例子吧
缘中人 2014-05-26
  • 打赏
  • 举报
回复
rcvbuf是让其函数自己申请控件的吗
villager127 2014-05-17
  • 打赏
  • 举报
回复
int tpcall(char *svc, char *idata, long ilen, char **odata, long *olen, long flags)
windows_java 2014-04-15
  • 打赏
  • 举报
回复

1,316

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧