Implemented connection timeout in C++

This commit is contained in:
Alessandro Ranellucci 2015-11-02 20:34:36 +01:00
parent 4295d65115
commit 9ee6829ebc
5 changed files with 19 additions and 18 deletions

View file

@ -301,12 +301,7 @@ sub connect {
if (!$res) {
$self->set_status("Connection failed");
}
{
# set up a timeout
my $timestamp = time();
1 until $self->sender->is_connected || (time - $timestamp) >= CONNECTION_TIMEOUT;
}
if ($self->sender->is_connected) {
if ($self->sender->wait_connected) {
$self->set_status("Printer is online. You can now start printing from the queue on the right.");
$self->status_timer->Start(STATUS_TIMER_INTERVAL, wxTIMER_CONTINUOUS);
$self->temp_timer->Start(TEMP_TIMER_INTERVAL, wxTIMER_CONTINUOUS);

View file

@ -1094,16 +1094,7 @@ sub build {
$self->{config}->serial_port,
$self->{config}->serial_speed,
);
if ($res) {
{
# set up a timeout
my $timestamp = time();
my $CONNECTION_TIMEOUT = 3; # seconds
1 until $sender->is_connected || (time - $timestamp) >= $CONNECTION_TIMEOUT;
}
$res = $sender->is_connected;
}
if ($res) {
if ($res && $sender->wait_connected) {
Slic3r::GUI::show_info($self, "Connection to printer works correctly.", "Success!");
} else {
Slic3r::GUI::show_error($self, "Connection failed.");