我正在开发一个silverlight应用程序,在那里我使用了webservices。服务器负责处理一些文本,获取音素信息,转换为视位,生成音频并编码为mp3。将返回视位列表和创建音频文件的路径。然后音频流传输到客户端。
但现在,我有一个问题。我需要服务器等待完整的音频编码创建。有时,音频尚未就绪,并且它不会为客户端流式传输。我已经尝试过thread.join,但它对于长文本也有同样的问题。
如何解决此问题的最佳方法是什么?
提前致谢
答案 0 :(得分:1)
也许我误解了你的问题,但我认为这不应该是一个大问题,因为异步模式应该真正帮助你......我对这种情况的直观理解将是这样的:
myWebServiceClient.ProcessTextCompleted += (sndr, evnt) =>
{
IsBusy = false;
var url = evnt.Result.PathToCreatedAudioFile;
PlayAudioFile(url);
};
IsBusy = true;
myWebServiceClient.ProcessTextAsync("abcdefg");
也许你可以提供更多信息,了解为什么这不符合您的情况。
干杯,亚历克斯