2013-06-14 6 views
5

내 C# 응용 프로그램에서 트윗을 보내려면 TweetSharp를 사용하고 있습니다. 내 응용 프로그램은 XNA 기반 게임이며 각 게임이 끝나면 점수는 자동으로 Twitter 계정으로 전송됩니다.C#에서 TweetSharp로 트위터를 게시하는 데 많은 시간이 걸립니다.

트윗은 매번 오류없이 게시되지만, 매번 그렇게 할 때마다 게임은 1.5 초 동안 정지합니다.

twitterService.SendTweet(new SendTweetOptions { Status = status }); 

이 게시 시간을 줄일 수있는 해결책이 될 수 무엇 :

내가 코드를 게시하려면이처럼 사용하고 있습니다?

+1

당신은 아마 속도를 할 수는 없지만 HTTP (배경 노동자에 넣어 수 : // msdn.microsoft.com/en-us/library/system.componentmodel.backgroundworker(v=vs.95).aspx) 프로그램이 실행되는 동안 수행되도록합니다. –

+0

빠른 답변 감사합니다. 멀티 스레딩을 위해 XNA의 더 쉬운 기능을 사용했으며 매력처럼 작동합니다! – thegameg

답변

4

새 스레드에서 뭔가를 실행하려면 .NET 4.5을 사용하는 경우 당신이이

// this is a better way to run something in the background 
// this queues up a task on a background threadpool 
await Task.Run(() => { 
    twitterService.SendTweet(new SendTweetOptions { Status = status }); 
}); 

// this method of running a task in the background creates unnecessary overhead 
Task.Factory.StartNew(() => { 
    twitterService.SendTweet(new SendTweetOptions { Status = status }); 
});