早些时候,我问过有关处理数据流的问题,有人建议将数据放入队列中,然后在另一个主题上处理这些数据。如果这很慢,我应该使用多个线程。
但是,我使用的系统只有一个核心。所以我的问题是:为什么不提高我的应用程序的优先级,以便从操作系统获得更多的CPU时间?我正在写一个基于服务器的应用程序,它将是唯一在此运行的大事。
摆好prio的利弊是什么?:)
以下对象线程是否安全?我将创建一个实例并使用两个或多个线程来使用它,这是一个很好的方法来解决这个问题吗?
public class ASyncBuffer<T>
{
readonly object _locker = new object();
private T _value;
private bool _dirty;
public T GetValue()
{
lock (_locker)
{
_dirty = false;
return _value;
}
}
public void SetValue(T value)
{
lock (_locker)
{
_dirty = true;
_value = value;
}
}
public bool Dirty
{
get
{
lock (_locker)
{
return _dirty;
}
}
}
}
Run Code Online (Sandbox Code Playgroud)