一个菜鸟线程问题...我希望通过一个新线程调用 sendSMS 过程,但面临无法传递参数的问题。没有使用跟踪 user1Mobile 和 messageContents 值的全局变量,基本的解决这个问题时的技术?我读过几篇文章,但我相信它们是矫枉过正的。
通常我会通过以下方式启动:
ThreadStart job = new ThreadStart(speakTextNewThread);
Thread thread = new Thread(sendSMS);
thread.Start();
现在从我的应用程序中的任何地方调用以及我希望使其成为线程:
sendSMS(Settings1.Default.user1Mobile, messageContents)
发送过程:
private string sendSMS(string phoneNumber, string messageToSend)
{
try
{
API api = new API(Settings1.Default.clockworkAPIKey);
SMS sms = new SMS
{
To = phoneNumber,
Message = messageToSend
};
SMSResult result = api.Send(sms);
if (result.Success)
return "Sent\nID: " + result.ID;
else
return "Error: " + result.ErrorMessage;
}
catch (APIException ex)
{
// You'll get an API exception for errors
// such as wrong key
return "API Exception: " + ex.Message;
}
}
谢谢