Opened 13 years ago
Last modified 13 years ago
#179 accepted defect
avoid threaded code as much as possible
Reported by: | Antoine Martin | Owned by: | Antoine Martin |
---|---|---|---|
Priority: | minor | Milestone: | 1.0 |
Component: | Android | Keywords: | |
Cc: |
Description
We should be using callbacks and twisted_exec
to avoid both blocking and the need for threading.
Threaded code is more complex, requires locking and often causes bugs.
As of r4536 (after improvements in r4635, r4631, etc), here are the remaining occurrences of threaded code that should be converted/improved:
applet
/client_base
threaded_start
- messy..controller
:threaded_ready
capture_display
do_shadow_session
reload_server_start_menu
quick_connect.validate
: slow socket check should use twisted (low priority)version_check
: slow - safe via ask(), maybe we should use twisted for downloading the data? (low priority)FS_Client_Helper
(currently unused - low priority)
The following occurrences have been verified or fixed already:
controller
:open_file
server_line_connection.do_send_bytes
server_util_base.start_read_from_log
must use a thread as it may well be slow/long due to I/O and callbacks:process_log_data
is now safe andprocess_log_line
(many instances) has been verifiedlocal_named_pipe
(must run in its own thread?)
In progress / pending:
- gstreamer_util.exec_launch_wrapper: should use twisted_exec
Change History (5)
comment:1 Changed 13 years ago by
Status: | new → accepted |
---|
comment:4 Changed 13 years ago by
r4642 does capture_display
without using threading by default (which was causing problems with gtk)
comment:5 Changed 13 years ago by
Milestone: | → 1.0 |
---|---|
Priority: | major → minor |
Note: See
TracTickets for help on using
tickets.
r4637 removes the gdk pixbuf calls from
load_server_start_menu
and r4638 takes advantage of this new code to give more icon_names to the client so it has more chances of doing a successful icon lookup