我遵循的是按每千米标准执行。 单单是,它就会产生一个超重的“”“深线渗漏”。 采用WindDBG/SoS 我能够看到许多ThreadPool Worker threads(其中一些被标为死亡)的瓦阿伊,最终我将获得AccessVioalation specialion。 任何人能否告诉我: 使用不当、不必要地锁定......任何 c子都会帮助我......此时此刻,无所作为。
RichTextBox tmpBox = txtIncomingData;
lock (m_TextUpdateSynch) {
try {
result = Utilities.SafeBeginInvoke(this, delegate() {
try {
if (tmpBox.Text.Length > BufferSize) {
tmpBox.Text = rawData;
}
else {
tmpBox.AppendText(rawData);
}
pageBottom(txtIncomingData);
}
catch (...) {}
});
this.EndInvoke(result);
}
public static IAsyncResult Utilities.SafeBeginInvoke(System.ComponentModel.ISynchronizeInvoke control,
ControlUpdate action, AsyncCallback callback,
params object[] args) {
IAsyncResult result = null;
Control uiControl = control as Control;
try {
result = control.BeginInvoke(action, args);
}
catch (...) { }
return result;
}