mirror of
https://github.com/Ryujinx/GtkSharp.git
synced 2024-12-26 07:25:41 +00:00
30 lines
1,014 B
Plaintext
30 lines
1,014 B
Plaintext
|
The gui-thread-check profile module
|
||
|
===================================
|
||
|
|
||
|
This profiler module can be used to check if a GTK# application is trying to
|
||
|
invoke gtk or gdk methods from a thread which is not the main GUI thread.
|
||
|
|
||
|
To use it, build and install the module, and then run your application with
|
||
|
the command:
|
||
|
|
||
|
mono --profile=gui-thread-check yourapp.exe
|
||
|
|
||
|
If the profiler is properly installed, you'll see an output like this:
|
||
|
|
||
|
*** Running with gui-thread-check ***
|
||
|
*** GUI THREAD INITIALIZED: 2861676352
|
||
|
|
||
|
While the application is running, if the profiler detects a non-gui thread
|
||
|
invoking gtk methods, it will print a warning message together with a
|
||
|
stack trace. For example:
|
||
|
|
||
|
*** GTK CALL NOT IN GUI THREAD: Widget.gtk_widget_get_parent
|
||
|
Widget.get_Parent
|
||
|
SourceEditorWidget.SetLastActiveEditor
|
||
|
SourceEditorWidget.get_TextEditor
|
||
|
SourceEditorWidget.get_Document
|
||
|
SourceEditorWidget.HandleParseInformationUpdaterWorkerThreadDoWork
|
||
|
BackgroundWorker.OnDoWork
|
||
|
BackgroundWorker.ProcessWorker
|
||
|
|