From 28ab768022d2f5f7885416fce62442eb9e0d3ea9 Mon Sep 17 00:00:00 2001 From: 13038267101 Date: Fri, 2 Jun 2023 11:58:25 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=87=E7=BA=A7=E5=9C=A8=E4=B8=BB=E7=BA=BF?= =?UTF-8?q?=E7=A8=8B=E5=BD=93=E4=B8=AD=E5=81=9A=EF=BC=8C=E4=BC=9A=E5=AF=BC?= =?UTF-8?q?=E8=87=B4=E4=B8=BB=E7=BA=BF=E7=A8=8B=E9=98=BB=E5=A1=9E=EF=BC=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hgdriver/hgdev/hg_scanner.cpp | 18 ++++++++++-------- hgdriver/hgdev/hg_scanner_239.cpp | 8 ++++---- hgdriver/hgdev/hg_scanner_300.cpp | 17 +++++++++-------- 3 files changed, 23 insertions(+), 20 deletions(-) diff --git a/hgdriver/hgdev/hg_scanner.cpp b/hgdriver/hgdev/hg_scanner.cpp index 1d54eda..ad8859a 100644 --- a/hgdriver/hgdev/hg_scanner.cpp +++ b/hgdriver/hgdev/hg_scanner.cpp @@ -223,8 +223,8 @@ hg_scanner::hg_scanner(ScannerSerial serial, const char* dev_name, usb_io* io, i wait_img_.set_debug_info("Image"); wait_usb_result_.set_debug_info("start"); wait_devsislock_.set_debug_info("Devsislock"); - wait_read_int.set_debug_info("read_int"); - thread_read_int_.reset(new std::thread(&hg_scanner::thread_read_int, this)); + //wait_read_int.set_debug_info("read_int"); + //thread_read_int_.reset(new std::thread(&hg_scanner::thread_read_int, this)); thread_usb_read_.reset(new std::thread(&hg_scanner::thread_handle_usb, this)); thread_img_handle_.reset(new std::thread(&hg_scanner::thread_image_handle, this)); @@ -239,8 +239,8 @@ hg_scanner::~hg_scanner() close(true); hg_version_free_handle(); - if (thread_read_int_.get() && thread_read_int_->joinable()) - thread_read_int_->join(); + //if (thread_read_int_.get() && thread_read_int_->joinable()) + // thread_read_int_->join(); if (thread_usb_read_.get() && thread_usb_read_->joinable()) thread_usb_read_->join(); if (thread_img_handle_.get() && thread_img_handle_->joinable()) @@ -345,7 +345,7 @@ void hg_scanner::thread_devslock_handle(void) } #endif is_firstopen_ = false; - is_read_int = false; + //is_read_int = false; } //int ret = SCANNER_ERR_OK; @@ -376,7 +376,7 @@ void hg_scanner::thread_read_int(void) } if (is_firstopen_) { - wait_devsislock_.notify(); + //wait_devsislock_.notify(); } } @@ -3186,8 +3186,10 @@ int hg_scanner::close(bool force) run_ = false; wait_usb_.notify(); wait_img_.notify(); - wait_devsislock_.notify(); - wait_read_int.notify(); + + if (thread_devslock_handle_.get()) + wait_devsislock_.notify(); + //wait_read_int.notify(); if(!scan_life_) { std::lock_guard lock(io_lock_); diff --git a/hgdriver/hgdev/hg_scanner_239.cpp b/hgdriver/hgdev/hg_scanner_239.cpp index 2f457a4..e9f26a5 100644 --- a/hgdriver/hgdev/hg_scanner_239.cpp +++ b/hgdriver/hgdev/hg_scanner_239.cpp @@ -172,10 +172,10 @@ hg_scanner_239::hg_scanner_239(const char* dev_name, int pid,usb_io* io) : hg_sc hg_version_init_handle(); init_version(); -//#ifdef OEM_HUAGAO -// wait_devsislock_.notify(); -//#endif - wait_read_int.notify(); +#ifdef OEM_HUAGAO + wait_devsislock_.notify(); +#endif + //wait_read_int.notify(); } hg_scanner_239::~hg_scanner_239() { diff --git a/hgdriver/hgdev/hg_scanner_300.cpp b/hgdriver/hgdev/hg_scanner_300.cpp index 73a3711..988ae73 100644 --- a/hgdriver/hgdev/hg_scanner_300.cpp +++ b/hgdriver/hgdev/hg_scanner_300.cpp @@ -92,7 +92,7 @@ hg_scanner_300::hg_scanner_300(const char* dev_name,int pid, usb_io* io) : hg_sc init_settings((jsontext3 + jsontext4 + jsontext5).c_str()); } initdevice(); - wait_read_int.notify(); + //wait_read_int.notify(); } hg_scanner_300::~hg_scanner_300() {} @@ -314,11 +314,11 @@ int hg_scanner_300::start(void) final_imgs_.clear(); - if (is_read_int) - { - VLOG_MINI_1(LOG_LEVEL_WARNING, "device status is(%s)\n", STATU_DESC_SCANNER_ERR_DEVICE_DEVS_BOOTING); - return SCANNER_ERR_DEVICE_DEVS_BOOTING; - } + //if (is_read_int) + //{ + // VLOG_MINI_1(LOG_LEVEL_WARNING, "device status is(%s)\n", STATU_DESC_SCANNER_ERR_DEVICE_DEVS_BOOTING); + // return SCANNER_ERR_DEVICE_DEVS_BOOTING; + //} ret = get_scan_is_sleep(val); if (!val && ret == SCANNER_ERR_OK) { @@ -729,7 +729,7 @@ int hg_scanner_300::initdevice() } if (status_ != SCANNER_ERR_DEVICE_SLEEPING) { - /*string fw = get_firmware_version(); + string fw = get_firmware_version(); if (!fw.empty()) { if (fw.substr(4, 6) == "230303") @@ -756,8 +756,9 @@ int hg_scanner_300::initdevice() scanner_path = scanner_path.substr(0, scanner_path.size() - libname.size()); scanner_path += "update.zip"; set_firmware_upgrade(scanner_path); + return SCANNER_ERR_OK; } - }*/ + } } if (status_ != SCANNER_ERR_DEVICE_SLEEPING) {