首页问答详情

for循环计数问题,为什么下列程序返回NULL需要30s

   
在学了在学了!
在学了在学了!  发布于  2020-08-22 19:33:54
采纳率 0%
36个问答
人在车底,非常的菜。
while(1)
    {
        int i;
        for(i=0;i<2;i++){}
        ret = Serial_Recv(serialfd, readbuf,sizeof(readbuf));  
        if(ret > 0)  
        {  
            readbuf[ret] = '\0';  
            if(!(ret=strcmp(readbuf,"ok")))
            {
                result="Available";
                memset(readbuf,0,sizeof(readbuf));
                Serial_Send(serialfd, sendbuf, strlen(sendbuf)+1); 
                if(serialfd>0)
                    {
                        close(serialfd);
                    }
                break;   
            }           
            else  
            {  
                result="Unknown command"; 
                break;
            }                            
        }
        else if(i==2)
        {
            result="NULL";
            break;
        }    
        sleep(2);
    }

}
我来回答
3140
0
0
回答
7个
易百纳技术社区
Abner 发布于2020-08-22 22:41:29

CPU慢

0
易百纳技术社区
ruri 发布于2020-12-25 15:30:43

Serial_Recv阻塞了

0
易百纳技术社区
泰山(Tarzan) 发布于2023-01-12 18:09:53

应该是阻塞了

0
易百纳技术社区
柒号华仔 发布于2023-01-17 13:54:39

if 和 else里面均有break可以跳出while,唯一出现等待的只会是Serial_Recv

0
易百纳技术社区
AI-海king 发布于2023-01-17 15:33:58
东北大学硕士。现任东软集团,高级架构师。兼职AI领域高级讲师。

阻塞了,需要优化一下算法

0
易百纳技术社区
小卢 发布于2023-01-17 16:51:46

应该是阻塞了,优化一下

0
易百纳技术社区
上进小菜猪 发布于2023-01-23 12:41:19

阻塞了

0

Markdown 语法

  • 加粗 **内容**
  • 斜体 *内容*
  • 删除线 ~~内容~~
  • 引用 > 引用内容
  • 代码 `代码`
  • 代码块 ```编程语言↵代码```
  • 链接 [链接标题](url)
  • 无序列表 - 内容
  • 有序列表 1. 内容
  • 缩进 内容
  • 图片 ![alt](url)

Markdown 语法

  • 加粗 **内容**
  • 斜体 *内容*
  • 删除线 ~~内容~~
  • 引用 > 引用内容
  • 代码 `代码`
  • 代码块 ```编程语言↵代码```
  • 链接 [链接标题](url)
  • 无序列表 - 内容
  • 有序列表 1. 内容
  • 缩进 内容
  • 图片 ![alt](url)
+ 添加网盘链接/附件
或将文件直接拖到这里
悬赏:
EBC
网盘
* 网盘链接:
* 提取码:
悬赏:
EBC
Loading...
易百纳技术社区
确定要删除此文章、专栏、评论吗?
确定
取消
易百纳技术社区
易百纳技术社区
在专栏模块发布专栏,可获得其他E友的打赏
易百纳技术社区
回答悬赏问答,被题主采纳后即可获得悬赏金
易百纳技术社区
在上传资料时,有价值的资料可设置为付费资源
易百纳技术社区
达到一定金额,收益即可提现~
收益也可用来充值ebc,下载资料、兑换礼品更容易
易百纳技术社区
活动规则
  • 1.周任务为周期性任务,每周周一00:00刷新,上周完成的任务不会累计到本周,本周需要从头开始任务,当前任务完成后才可以完成下一个任务
  • 2.发布的专栏与资料需要与平台的板块有相关性,禁止注水,专栏/资料任务以审核通过的篇数为准
  • 3.任务完成后,现金奖励直接打款到微信账户;EBC/收益将自动发放到个人账户,可前往“我的钱包”查看;其他奖励请联系客服兑换
  • 4.每周最后三个任务将会有以下奖品掉落:社区热卖开发板、小米音响、视频年度会员、京东卡、华为手机等等
易百纳技术社区
升级提醒
易百纳技术社区

恭喜您由入门

社区送出礼品一份

请填写您的收件地址,礼品将在3个工作日寄出

易百纳技术社区