LINUX 下EKHO C++编程实现并发问题

发布于 2021-11-30 17:47:47 字数 1769 浏览 1047 评论 7

@黄冠能 你好,想跟你请教个问题:LINUX 下EKHO C++编程实现并发问题 执行生成的a.out直接无反应

以下是我的程序 麻烦帮看看哪有问题(暂时起了一个线程)

#include <pthread.h> //多线程相关操作头文件,可移植众多平台  
#include <iostream>
#include "config.h" // this file is generated when building Ekho
#include "ekho.h"
#include <cstdlib>  
using namespace ekho;  
 
#define NUM_THREADS 1 //线程数  
 
void* say_hello( void* args )  
{  

    int i = *(int *)args;
     Ekho wong("Mandarin");
     wong.startServer(2049);
     wong.request("192.168.152.136", 2049,SAVEMP3, "扩展名件格式", "asdt.mp3");
    return 0;
} //函数返回的是函数指针,便于后面作为参数  
 
int main()  
{  
    pthread_t tids[NUM_THREADS]; //线程id  
    for( int i = 0; i < NUM_THREADS; ++i )  
    {  
        
        int ret = pthread_create( &tids[i], NULL, say_hello, &tids[i]); //参数:创建的线程id,线程参数,线程运行函数的起始地址,运行函数的参数  
       if( ret != 0 ) //创建线程成功返回0  
        {  
            cout << "pthread_create error:error_code=" << ret << endl;  
        }  
    }  
    pthread_exit( NULL ); //等待各个线程退出后,进程才结束,否则进程强制结束,线程处于未终止的状态  
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

落墨 2021-12-02 08:08:15

你有没有看INSTALL文件?里面有描述MP3库的依赖包,安装之后你就可以生成MP3了。configure的结果里面也会有提示是否检测到MP3库,是否支持MP3功能。

作为开发者,你要习惯自己多观察和思考,不能期望软件的作者给你非常多的指导。多数情况下你根本联系不上作者,即使能联系上,能回复你一两次就不错了。我开发Ekho并不是为开发者服务,你若想用Ekho做开发就需要有点钻研的精神。你的项目急不代表别人就应该去配合你,即使是同一个公司,也不见得能得到同事很及时的帮助。要未雨绸缪,同时谨记自助者天助。

泛滥成性 2021-12-02 08:08:02

回复
我在系统中重新下载安装了lame-3.99.1 mp3编码器 但是还是报MP3不支持

一个人的旅程 2021-12-02 08:03:58

回复
应该是系统不支持MP3格式 我生成ogg的格式让后再win7下转换为MP3就可以 请问怎么让ekho支持MP3编码呢 我收到安装的lame也不行

坏尐絯 2021-12-02 07:39:53

回复
Ekho wong("Mandarin"); wong.saveMp3("1231231231","aaaa.mp3"); 报错如下: undefined reference to ekho::Ekho::saveMp3(std::string, std::string) collect2: 是不是不支持MP3格式转换

爱你是孤单的心事 2021-12-02 06:51:00

回复
命令行输入ekho -t mp3 报:Please report bugs to Cameron Wong (hgneng at gmail.com)

旧伤慢歌 2021-12-02 05:21:20

回复
最终结果 已阵亡 绝望+放弃

流心雨 2021-12-01 15:34:54

同一个端口server只有1个,client可以有多个。

startSever之后会进入服务进程的死循环,不会再返回的。

我平时是在命令行ekho --server开启一个服务进程,然后ekho --request "text"来合成语音的。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文