the decode task thread proc
| 1975 | |
| 1976 | // the decode task thread proc |
| 1977 | void SigSession::decode_task_proc() |
| 1978 | { |
| 1979 | dsv_info("------->decode thread start"); |
| 1980 | auto task = get_top_decode_task(); |
| 1981 | |
| 1982 | while (task != NULL) |
| 1983 | { |
| 1984 | if (!task->_delete_flag) |
| 1985 | { |
| 1986 | task->decoder()->begin_decode_work(); |
| 1987 | } |
| 1988 | |
| 1989 | if (task->_delete_flag) |
| 1990 | { |
| 1991 | dsv_info("destroy a decoder in task thread"); |
| 1992 | |
| 1993 | DESTROY_QT_LATER(task); |
| 1994 | std::this_thread::sleep_for(std::chrono::milliseconds(100)); |
| 1995 | if (!_bClose) |
| 1996 | { |
| 1997 | signals_changed(); |
| 1998 | } |
| 1999 | } |
| 2000 | |
| 2001 | task = get_top_decode_task(); |
| 2002 | } |
| 2003 | |
| 2004 | _view_data->get_logic()->decode_end(); |
| 2005 | |
| 2006 | dsv_info("------->decode thread end"); |
| 2007 | _is_decoding = false; |
| 2008 | } |
| 2009 | |
| 2010 | Snapshot *SigSession::get_signal_snapshot() |
| 2011 | { |
nothing calls this directly
no test coverage detected