Ich schreibe ein Java-Programm, das die verstrichenen Sekunden ausgibt, und jede fünfte Sekunde wird eine Nachricht gedruckt. Dies ist eine Beispielausgabe:
%Vor%Wie kann ich die boolesche Variable printMsg entfernen? Gibt es ein besseres Thread-Design, das dies erlaubt?
Für jetzt, ohne printMsg wird das Programm mehrere "Hallo" während der 1/10 Sekunde Programm bei 5, 10, 15 usw. drucken.
%Vor%Eine Möglichkeit zur Vereinfachung und besseren Gestaltung besteht darin, einen einzelnen Thread anstelle von zwei Threads zu verwenden. Und lassen Sie den einzelnen Thread kümmern Sekunden Sekunden sowie Nachricht drucken. Auf diese Weise reduzieren Sie einen Thread und müssen nicht warten () und benachrichtigen. Gibt es einen Grund, warum Sie zwei Threads verwenden möchten? Code unten:
%Vor%Tags und Links java multithreading