zoukankan      html  css  js  c++  java
  • Qt 多线程和网络编程学习

    一,Qt多线程类学习

      QThread类,开始一个新的线程就是开始执行重新实现QThread::run(),run()是默认现实调用exec(),QThread::start()开始线程的执行,run()函数是在start()函数调用之后开始执行

      QMutex类,互斥量/互斥锁,加锁解锁,原子操作

      QWaitCondition类,一个线程在一定条件下等待其它线程的唤醒,在此之前一直处于休眠期。QWaitCondition::wakeOne()随机唤醒一个等待的线程,QWaitCondition::wakeAll()唤醒所有。

      QReadWriteLock提供一个可以同时读写操作的锁,读写锁,读时共享写时独占,写锁优先级比读锁高

      QSemaphore 提供一个整型信号,是互斥量的泛华,即规定只能多少个线程进行操作

      Qt高级线程类:QtConcurrent类开启线程事务,QFutureWatcher类观测线程状态,QFuture类线程启动类

      QMutex,QReadWriteLock,QSemaphore,QWaitCondition提供线程同步的手段,使用线程主要是为了并发执行。

    二,Qt中的网络编程类学习

      QTcpSocket类 可靠的流传输

      QUdpSocket类 不可靠大报文传输 bind(),writeDatagram()写报文,readDatagram()读报文,joinMulticastGroup()广播(join/leave),hasPendingDatagrams()如果至少接到一个报文返回true

      QAbstractSocket类,connectToHost(),state(),waitForConnected(),waitForDisconnect(),readData(),writeData()

      QTcpServer类

      QLocalServer类 listen(),serverName(),close()

      QLocalSocket类 serverName(),connectToserver(),disconnectFromServer(),state(),waitForConnect(),waitForDisconnect()

      QHostaddress类 setAddress(),toIPv4Address(),clear()

      QHostInfo类,lookupHost(),abortlookupHost(),fromName()通过名字找到IP,localHostName()

  • 相关阅读:
    (12)springboot打war包-copy
    基于Python在MacOS上安装robotframework-ride
    mac终端输入python默认打开python3
    win10 切换网卡的bat
    PyCharm2018激活码
    我告诉你 ,一个 window免费系统下载的网站!
    oracle 子查询的几个种类
    trunc()
    case when then else end 与 decode 的区别
    触发器 of oracle
  • 原文地址:https://www.cnblogs.com/weizhixiang/p/6259260.html
Copyright © 2011-2022 走看看