<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741245</guid>
        <pubDate>Wed, 24 Oct 2007 17:35:46 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741245</link>
        <description><![CDATA[zss: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1741242'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>archimed7592 &#064; <time class="tag-quote__quoted-time" datetime="2007-10-24T21:32:16+04:00">24.10.07, 17:32</time></span><div class='quote '>Та не... Всё прально. Только нет гарантии продолжительности жизни m_class. </div></div><br>
ну тогда так<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">class ConnectThread : public QThread {</div><div class="code_line">private :</div><div class="code_line">&nbsp;&nbsp; &nbsp;boost::weak_ptr&#60;MyClass&#62; m_class;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp;virtual void run (void)</div><div class="code_line">&nbsp;&nbsp; &nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if (m_class.expired()) return;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;m_class.connect();</div><div class="code_line">&nbsp;&nbsp; &nbsp;}</div><div class="code_line">&nbsp;</div><div class="code_line">public :</div><div class="code_line">&nbsp;&nbsp; &nbsp;explicit ConnectThread (boost::weak_ptr&#60;MyClass&#62; mclass) : m_class (m_class) {}</div><div class="code_line">}</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
<br>
Хотя объект-поток должен умереть, после того как поток отработал. Нет смысла использовать этот объект.<br>
Проще создать новый. Поэтому и время его жизни должно быть не более чем у m_class]]></description>
        <author>zss</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741242</guid>
        <pubDate>Wed, 24 Oct 2007 17:32:16 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741242</link>
        <description><![CDATA[archimed7592: Та не... Всё прально. Только нет гарантии продолжительности жизни m_class.]]></description>
        <author>archimed7592</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741189</guid>
        <pubDate>Wed, 24 Oct 2007 16:30:35 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741189</link>
        <description><![CDATA[zss: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1741184'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>archimed7592 &#064; <time class="tag-quote__quoted-time" datetime="2007-10-24T16:24:58+00:00">24.10.07, 16:24</time></span><div class='quote '>Паттерн State </div></div><br>
пока не дочитал до него :)<br>
<br>
<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1741184'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>archimed7592 &#064; <time class="tag-quote__quoted-time" datetime="2007-10-24T16:24:58+00:00">24.10.07, 16:24</time></span><div class='quote '>Ну а по хорошему - просто общую структурку создрать и хранить shared_ptr на неё в обоих объектах-потоках. Либо, если они оба будут неотделимым целым от третьего класса, то просто хранить указатель на &quot;папу&quot;. </div></div><br>
а можно ли по-другому.<br>
<br>
Например сам класс - хранит данные и реализует методы, но не является потоковым<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">class MyClass </div><div class="code_line">private :</div><div class="code_line">&nbsp;&nbsp; // data</div><div class="code_line">&nbsp;</div><div class="code_line">public :</div><div class="code_line">&nbsp;&nbsp; &nbsp;bool connect (void) {...}</div><div class="code_line">&nbsp;&nbsp; &nbsp;bool disconnect (void) {...}</div></ol></div></div></div></div><br>
<br>
а 2 потоковых объекта реализуют вызов<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">class ConnectThread : public QThread {</div><div class="code_line">private :</div><div class="code_line">&nbsp;&nbsp; &nbsp;MyClass&amp; m_class;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp;virtual void run (void) { m_class.connect(); }</div><div class="code_line">&nbsp;</div><div class="code_line">public :</div><div class="code_line">&nbsp;&nbsp; &nbsp;explicit ConnectThread (MyClass&amp; mclass) : m_class (m_class) {}</div><div class="code_line">&nbsp;</div><div class="code_line">}</div><div class="code_line">&nbsp;</div><div class="code_line">class DisconnectThread : public QThread {</div><div class="code_line">private :</div><div class="code_line">&nbsp;&nbsp; &nbsp;MyClass&amp; m_class;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp;virtual void run (void) { m_class.disconnect(); }</div><div class="code_line">&nbsp;</div><div class="code_line">public :</div><div class="code_line">&nbsp;&nbsp; &nbsp;explicit DisconnectThread (MyClass&amp; mclass) : m_class (m_class) {}</div><div class="code_line">&nbsp;</div><div class="code_line">}</div></ol></div></div></div></div><br>
<br>
ли это не совсем правильно ?]]></description>
        <author>zss</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741184</guid>
        <pubDate>Wed, 24 Oct 2007 16:24:58 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741184</link>
        <description><![CDATA[archimed7592: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1741183'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>zss &#064; <time class="tag-quote__quoted-time" datetime="2007-10-24T16:22:22+00:00">24.10.07, 16:22</time></span><div class='quote '>а как быть если общие жанные нужны - например состояние</div></div><br>
Паттерн State :D.<br>
Ну а по хорошему - просто общую структурку создрать и хранить shared_ptr на неё в обоих объектах-потоках. Либо, если они оба будут неотделимым целым от третьего класса, то просто хранить указатель на &quot;папу&quot;.]]></description>
        <author>archimed7592</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741183</guid>
        <pubDate>Wed, 24 Oct 2007 16:22:22 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741183</link>
        <description><![CDATA[zss: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1741170'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>archimed7592 &#064; <time class="tag-quote__quoted-time" datetime="2007-10-24T16:00:19+00:00">24.10.07, 16:00</time></span><div class='quote '>Если тебе нужно 2 потока, то создавать нужно, ессно 2 объекта-потомка QThread. </div></div><br>
а как быть если общие жанные нужны - например состояние]]></description>
        <author>zss</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741170</guid>
        <pubDate>Wed, 24 Oct 2007 16:00:19 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741170</link>
        <description><![CDATA[archimed7592: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1741164'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>zss &#064; <time class="tag-quote__quoted-time" datetime="2007-10-24T15:56:54+00:00">24.10.07, 15:56</time></span><div class='quote '>Есть 2 разных метода, 2 разных потока, 2 разных слота...</div></div><br>
Ааа, я просто неправильно тебя понял :).<br>
<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1741156'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>zss &#064; <time class="tag-quote__quoted-time" datetime="2007-10-24T15:49:46+00:00">24.10.07, 15:49</time></span><div class='quote '>Получается нужно 2 разных объекта-потока создавать ?</div></div><br>
Если тебе нужно 2 потока, то создавать нужно, ессно 2 объекта-потомка QThread.]]></description>
        <author>archimed7592</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741164</guid>
        <pubDate>Wed, 24 Oct 2007 15:56:54 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741164</link>
        <description><![CDATA[zss: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1741163'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>archimed7592 &#064; <time class="tag-quote__quoted-time" datetime="2007-10-24T15:55:30+00:00">24.10.07, 15:55</time></span><div class='quote '>Хотя... Система сигнал/слотов спасёт отца русской демократии .<br>
Сделай disconnected слотом и прицепи на него нужный сигнал</div></div><br>
не понял - а что это даст ?<br>
<br>
Есть 2 разных метода, 2 разных потока, 2 разных слота...]]></description>
        <author>zss</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741163</guid>
        <pubDate>Wed, 24 Oct 2007 15:55:30 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741163</link>
        <description><![CDATA[archimed7592: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1741156'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>zss &#064; <time class="tag-quote__quoted-time" datetime="2007-10-24T15:49:46+00:00">24.10.07, 15:49</time></span><div class='quote '>Получается нужно 2 разных объекта-потока создавать ?</div></div><br>
Вот ты и пришёл потихоньку к аггрегации :).<br>
<br>
Хотя... Система сигнал/слотов спасёт отца русской демократии ;).<br>
Сделай disconnected слотом и прицепи на него нужный сигнал.]]></description>
        <author>archimed7592</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741156</guid>
        <pubDate>Wed, 24 Oct 2007 15:49:46 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1741156</link>
        <description><![CDATA[zss: тут еще вопросик возник.<br>
<br>
Вот например класса<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">class MyThread : protected QThread {</div><div class="code_line">private :</div><div class="code_line">&nbsp;&nbsp; &nbsp;virtual void run (void)</div><div class="code_line">&nbsp;&nbsp; &nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;...</div><div class="code_line">&nbsp;&nbsp; &nbsp;}</div><div class="code_line">&nbsp;</div><div class="code_line">public :</div><div class="code_line">&nbsp;&nbsp; &nbsp;void connect (void)</div><div class="code_line">&nbsp;&nbsp; &nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;QThread::start ();</div><div class="code_line">&nbsp;&nbsp; &nbsp;}</div><div class="code_line">&nbsp;&nbsp; &nbsp;void disconnect (void) {...}</div><div class="code_line">}</div></ol></div></div></div></div><br>
<br>
тоесть метод connect запускает отдельный поток, а сигнал finished говорит о его завершении.<br>
Но тут понадобилось и disconnect запускать в отдельном потоке и тоже ожидать finished.<br>
<br>
Получается нужно 2 разных объекта-потока создавать ?]]></description>
        <author>zss</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734635</guid>
        <pubDate>Thu, 18 Oct 2007 17:10:37 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734635</link>
        <description><![CDATA[archimed7592: Ругается или предупреждает? :)<br>Смотря как использовать...]]></description>
        <author>archimed7592</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734627</guid>
        <pubDate>Thu, 18 Oct 2007 17:03:29 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734627</link>
        <description><![CDATA[zss: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1734623'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>archimed7592 &#064; <time class="tag-quote__quoted-time" datetime="2007-10-18T17:00:00+00:00">18.10.07, 17:00</time></span><div class='quote '>   MyThread()<br>
        : thread(*this)<br>
    { }</div></div><br>
разве можно использовать this в конструкторе. Объект еще не создан и моя студия ругается на это...]]></description>
        <author>zss</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734623</guid>
        <pubDate>Thu, 18 Oct 2007 17:00:00 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734623</link>
        <description><![CDATA[archimed7592: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1734560'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>zss &#064; <time class="tag-quote__quoted-time" datetime="2007-10-18T15:57:02+00:00">18.10.07, 15:57</time></span><div class='quote '>что ты имеешь ввиду</div></div><br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">class MyThread</div><div class="code_line">{</div><div class="code_line">&nbsp;&nbsp; &nbsp;class ThreadImpl : public QThread</div><div class="code_line">&nbsp;&nbsp; &nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; MyThread &parent;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; void run() { parent.run() }</div><div class="code_line">&nbsp;&nbsp; &nbsp;public:</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;ThreadImpl(MyThread &amp;parent) : QThread(...), parent(patent) { }</div><div class="code_line">&nbsp;&nbsp; &nbsp;};</div><div class="code_line">&nbsp;&nbsp; &nbsp;ThreadImpl thread;</div><div class="code_line">public:</div><div class="code_line">&nbsp;&nbsp; &nbsp;MyThread()</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;: thread(*this)</div><div class="code_line">&nbsp;&nbsp; &nbsp;{ }</div><div class="code_line">&nbsp;&nbsp; &nbsp;int run()</div><div class="code_line">&nbsp;&nbsp; &nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; return this-&#62;runImpl();</div><div class="code_line">&nbsp;&nbsp; &nbsp;}</div><div class="code_line">private:</div><div class="code_line">&nbsp;&nbsp; &nbsp;virtual int runImpl() = 0;</div><div class="code_line">}</div></ol></div></div></div></div>]]></description>
        <author>archimed7592</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734560</guid>
        <pubDate>Thu, 18 Oct 2007 15:57:02 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734560</link>
        <description><![CDATA[zss: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1734557'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>archimed7592 &#064; <time class="tag-quote__quoted-time" datetime="2007-10-18T15:53:15+00:00">18.10.07, 15:53</time></span><div class='quote '>Так вызываются только сигналы... Слоты можно вызывать точно так же, как самые обыкновенные ф-ции.</div></div><br>
точно тогда так <br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">class MyClass : protected QThread {</div><div class="code_line">public slots :</div><div class="code_line">&nbsp;&nbsp; &nbsp;void started (void) { QThread::started(); &nbsp;}</div><div class="code_line">&nbsp;&nbsp; &nbsp;void finished(void) { QThread::finished(); }</div><div class="code_line">}</div></ol></div></div></div></div><br>
<br>
<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1734557'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>archimed7592 &#064; <time class="tag-quote__quoted-time" datetime="2007-10-18T15:53:15+00:00">18.10.07, 15:53</time></span><div class='quote '>Template Method.</div></div><br>
что ты имеешь ввиду]]></description>
        <author>zss</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734557</guid>
        <pubDate>Thu, 18 Oct 2007 15:53:15 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734557</link>
        <description><![CDATA[archimed7592: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1734552'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>zss &#064; <time class="tag-quote__quoted-time" datetime="2007-10-18T15:49:12+00:00">18.10.07, 15:49</time></span><div class='quote '>тогда от него нельзя наследоваться и верекрывать виртуальный run :)</div></div><br>
Template Method.<br>
<br>
<br>
<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1734552'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>zss &#064; <time class="tag-quote__quoted-time" datetime="2007-10-18T15:49:12+00:00">18.10.07, 15:49</time></span><div class='quote '>Может не городить, а просто их вызвать ?</div></div><br>
Так вызываются только сигналы... Слоты можно вызывать точно так же, как самые обыкновенные ф-ции.]]></description>
        <author>archimed7592</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734552</guid>
        <pubDate>Thu, 18 Oct 2007 15:49:12 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734552</link>
        <description><![CDATA[zss: <strong class='tag-b'>archimed7592</strong>, тогда от него нельзя наследоваться и верекрывать виртуальный run :)<br>
<br>
мне нужно просто оставить 2 слота started &amp; finished<br>
<br>
Может не городить, а просто их вызвать ?<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">class MyClass : protected QThread {</div><div class="code_line">public slots :</div><div class="code_line">&nbsp;&nbsp; &nbsp;void started (void) { emit QThread::started(); &nbsp;}</div><div class="code_line">&nbsp;&nbsp; &nbsp;void finished(void) { emit QThread::finished(); }</div><div class="code_line">}</div></ol></div></div></div></div>]]></description>
        <author>zss</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734468</guid>
        <pubDate>Thu, 18 Oct 2007 14:51:32 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734468</link>
        <description><![CDATA[archimed7592: <div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">class MyThread</div><div class="code_line">{</div><div class="code_line">&nbsp;&nbsp; &nbsp;class ThreadImpl : public QThread</div><div class="code_line">&nbsp;&nbsp; &nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; void run() { ... }</div><div class="code_line">&nbsp;&nbsp; &nbsp;};</div><div class="code_line">&nbsp;&nbsp; &nbsp;ThreadImpl thread;</div><div class="code_line">public:</div><div class="code_line">&nbsp;&nbsp; &nbsp;MyThread()</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;: thread(...)</div><div class="code_line">&nbsp;&nbsp; &nbsp;{ }</div><div class="code_line">&nbsp;&nbsp; &nbsp;int run()</div><div class="code_line">&nbsp;&nbsp; &nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; ...</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; thread.run();</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; return ...</div><div class="code_line">&nbsp;&nbsp; &nbsp;}</div><div class="code_line">}</div></ol></div></div></div></div>]]></description>
        <author>archimed7592</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734464</guid>
        <pubDate>Thu, 18 Oct 2007 14:48:47 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734464</link>
        <description><![CDATA[zss: run чисто виртуальный метод - поэтому нельзя создать оюъект QThread в MyThread]]></description>
        <author>zss</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734454</guid>
        <pubDate>Thu, 18 Oct 2007 14:40:52 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734454</link>
        <description><![CDATA[archimed7592: Ммм... Не особо помню как устроен QThread, но, тем не менее:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">class MyThread</div><div class="code_line">{</div><div class="code_line">&nbsp;&nbsp; &nbsp;QThread thread;</div><div class="code_line">public:</div><div class="code_line">&nbsp;&nbsp; &nbsp;MyThread()</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;: thread(...)</div><div class="code_line">&nbsp;&nbsp; &nbsp;{ }</div><div class="code_line">&nbsp;&nbsp; &nbsp;int run()</div><div class="code_line">&nbsp;&nbsp; &nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; ...</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; thread.run();</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; return ...</div><div class="code_line">&nbsp;&nbsp; &nbsp;}</div><div class="code_line">}</div></ol></div></div></div></div>]]></description>
        <author>archimed7592</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734443</guid>
        <pubDate>Thu, 18 Oct 2007 14:34:20 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1734443</link>
        <description><![CDATA[zss: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1732979'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>archimed7592 &#064; <time class="tag-quote__quoted-time" datetime="2007-10-17T17:18:36+00:00">17.10.07, 17:18</time></span><div class='quote '>Используй тогда аггрегацию(has-a) вместо наследования(is-a) (аля паттерн Адаптер )... </div></div><br>
а как ты себе это представляешь для QThread ?]]></description>
        <author>zss</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1732979</guid>
        <pubDate>Wed, 17 Oct 2007 17:18:36 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1732979</link>
        <description><![CDATA[archimed7592: Ну а зачем? :)<br>Используй тогда аггрегацию(has-a) вместо наследования(is-a) (аля паттерн Адаптер :lol:)...]]></description>
        <author>archimed7592</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1732977</guid>
        <pubDate>Wed, 17 Oct 2007 17:15:15 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1732977</link>
        <description><![CDATA[zss: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1732975'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>archimed7592 &#064; <time class="tag-quote__quoted-time" datetime="2007-10-17T17:13:44+00:00">17.10.07, 17:13</time></span><div class='quote '>А разве есть какой-нибудь смысл наследоваться от QThread как protected? Я даже придумать не могу </div></div><br>
чтоб закрыть все, и открыть только один метод (аля паттерн &quot;Павлик Морозов&quot; :))]]></description>
        <author>zss</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1732975</guid>
        <pubDate>Wed, 17 Oct 2007 17:13:44 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1732975</link>
        <description><![CDATA[archimed7592: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=206833&view=findpost&p=1732966'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>zss &#064; <time class="tag-quote__quoted-time" datetime="2007-10-17T17:06:16+00:00">17.10.07, 17:06</time></span><div class='quote '>З.Ы. Я наследуюсь от QThread как protected.<br>
Почему в секции signals нельзя использовать директиву using ?</div></div><br>
Потому что сигналы - это не такие же обычные ф-ции, как слоты. Ты не забывай, что в Qt своя metaobject система :).<br>
<br>
А разве есть какой-нибудь смысл наследоваться от QThread как protected? Я даже придумать не могу :).]]></description>
        <author>archimed7592</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1732966</guid>
        <pubDate>Wed, 17 Oct 2007 17:06:16 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1732966</link>
        <description><![CDATA[zss: я думал что это уже реализовано у QThread :(<br><br>З.Ы. Я наследуюсь от QThread как protected.<br>Почему в секции signals нельзя использовать директиву using ?]]></description>
        <author>zss</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1731879</guid>
        <pubDate>Tue, 16 Oct 2007 19:19:39 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1731879</link>
        <description><![CDATA[archimed7592: <div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;class MyThread : public QThread</div><div class="code_line">&nbsp;{</div><div class="code_line">&nbsp;public:</div><div class="code_line">&nbsp;&nbsp; &nbsp; int result() const;</div><div class="code_line">&nbsp;protectes:</div><div class="code_line">&nbsp;&nbsp; &nbsp; void run();</div><div class="code_line">&nbsp;&nbsp; &nbsp; int m_result;</div><div class="code_line">&nbsp;};</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;void MyThread::run()</div><div class="code_line">&nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp;// ...</div><div class="code_line">&nbsp;&nbsp; &nbsp;m_result = 5;</div><div class="code_line">&nbsp;}</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;int MyThread::result() const</div><div class="code_line">&nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp;return m_result;</div><div class="code_line">&nbsp;}</div></ol></div></div></div></div>]]></description>
        <author>archimed7592</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1731723</guid>
        <pubDate>Tue, 16 Oct 2007 16:00:12 +0000</pubDate>
        <title>QThread</title>
        <link>https://forum.sources.ru/index.php?showtopic=206833&amp;view=findpost&amp;p=1731723</link>
        <description><![CDATA[zss: Можно ли как узнать результат завершения потока и как его задать в самом потоке ?]]></description>
        <author>zss</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      </channel>
      </rss>
	