Articles of Multithreading

Aktualisieren einer ObservableCollection in einem separaten Thread

In einer WPF-Anwendung wird eine ObservableCollection von LINQ in SQL-Abfragen gefüllt und aktualisiert. Anschließend werden UI-Objekte mithilfe von Werten aus dieser ObservableCollection aktualisiert. Ist es möglich und sinnvoll, dass Operationen zum Aktualisieren dieser ObservableCollection durch LINQ to SQL-Abfragen in einem separaten Thread ausgeführt wurden? Wenn ja, handelt es sich in diesem Fall um ein und […]

C ++ – Threads, std :: system_error – Operation nicht erlaubt?

Also schrieb ich ein Programm zum Testen von Threads auf 64-Bit-Kubuntu-Linux, Version 13.04. Eigentlich habe ich den Code von jemandem gestohlen, der gerade ein Testprogramm geschrieben hat. #include #include #include void task1(const std::string msg) { std::cout << "task1 says: " << msg << std::endl; } int main(int argc, char **argv) { std::thread t1(task1, "Hello"); t1.join(); […]

Wie man Textbox auf der GUI von einem anderen Thread aktualisiert

Ich bin neu mit C # und ich versuche, eine einfache Client-Server-Chat-Anwendung zu machen. Ich habe RichTextBox auf meinem Client-Windows-Formular und ich versuche, dieses Steuerelement von Server zu aktualisieren, der in einer anderen class ist. Wenn ich es versuche, bekomme ich den Fehler: “Cross-Thread-Operation nicht gültig: Control TextBox1 zugegriffen von einem anderen Thread als der […]

Aktualisieren der Benutzeroberfläche von verschiedenen Threads in JavaFX

Ich entwickle eine Anwendung mit mehreren TextField Objekten, die aktualisiert werden müssen, um Änderungen in zugeordneten Back-End-Eigenschaften widerzuspiegeln. Die TextField nicht bearbeitet werden, nur das TextField kann ihren Inhalt ändern. So wie ich es verstanden habe, ist es richtig, die schwere Berechnung in einem separaten Thread auszuführen, um die Benutzeroberfläche nicht zu blockieren. Ich tat […]

Bleibt ein gesperrtes Objekt gesperrt, wenn eine Ausnahme darin auftritt?

Wenn ich in der ac # threading app ein Objekt sperren möchte, sagen wir eine Warteschlange, und wenn eine Ausnahme auftritt, bleibt das Objekt gesperrt? Hier ist der Pseudocode: int ii; lock(MyQueue) { MyClass LclClass = (MyClass)MyQueue.Dequeue(); try { ii = int.parse(LclClass.SomeString); } catch { MessageBox.Show(“Error parsing string”); } } Wie ich es verstehe, Code […]

Wie erstellt man eine Aufgabe (TPL), die einen STA-Thread ausführt?

Die Verwendung von Thread ist ziemlich einfach Thread thread = new Thread(MethodWhichRequiresSTA); thread.SetApartmentState(ApartmentState.STA); Wie erreiche ich dasselbe mit Aufgaben in einer WPF-Anwendung? Hier ist ein Code: Task.Factory.StartNew ( () => {return “some Text”;} ) .ContinueWith(r => AddControlsToGrid(r.Result)); Ich bekomme eine InvalidOperationException mit Der aufrufende Thread muss STA sein, da viele UI-Komponenten dies erfordern.

Java Executors: Wie kann ich die Aufgabenpriorität festlegen?

Gibt es eine Möglichkeit, Aufgaben, die von Executors ausgeführt werden, zu priorisieren? Ich habe einige Aussagen in JCIP darüber gefunden, dass es möglich ist, aber ich kann kein Beispiel finden und ich kann nichts in Docs finden. Von JCIP: Eine Ausführungsrichtlinie gibt das “Was, Wo, Wann und Wie” der Taskausführung an, einschließlich: … In welcher […]

Fadensteuerung.Invozieren

Ich habe eine function public void ShowAllFly() { cbFly.Items.Clear(); cbFly.Items.Add(“Uçuş Seçiniz…”); dsFlyTableAdapters.tblFlyTableAdapter _t=new KTHY.dsFlyTableAdapters.tblFlyTableAdapter(); dsFly _mds = new dsFly(); _mds.EnforceConstraints = false; dsFly.tblFlyDataTable _m = _mds.tblFly; _t.Fill(_m); foreach (DataRow _row in _m.Rows) { cbFly.Items.Add(_row[“FlyID”].ToString()+”-“+_row[“FlyName”].ToString() + “-” + _row[“FlyDirection”].ToString() + “-” + _row[“FlyDateTime”].ToString()); } _Thread.Abort(); timer1.Enabled = false; WaitPanel.Visible = false; } In Form_Load Function So; […]

Der asynchrone process startet und wartet auf den Abschluss

Ich bin neu im Thread-Modell in .net. Was würdest du benutzen: Starten Sie einen process, der eine Datei verarbeitet (process.StartInfo.FileName = Dateiname;) Warten Sie, bis der Benutzer den process beendet hat, oder geben Sie den Thread nach einiger Zeit ab Wenn der Benutzer den process geschlossen hat, löschen Sie die Datei Das Starten des processes […]

Ist der ++ Operator Thread sicher?

HINWEIS: Ich bin wirklich nicht sehr gut in Multithread-Programmierung, aber mein aktuelles Projekt hat mich dabei, also versuche ich herauszufinden, was threadsicher ist und was nicht. Ich habe eine von Eric Lipperts tollen Antworten gelesen, was ++ ich mache . Er sagt, das ist was wirklich passiert: x wird ausgewertet, um die Variable zu erzeugen […]