PySide.QtDeclarative.QDeclarativeNetworkAccessManagerFactory class creates PySide.QtNetwork.QNetworkAccessManager instances for a QML engine.
A QML engine uses PySide.QtNetwork.QNetworkAccessManager for all network access. By implementing a factory, it is possible to provide the QML engine with custom PySide.QtNetwork.QNetworkAccessManager instances with specialized caching, proxy and cookies support.
To implement a factory, subclass PySide.QtDeclarative.QDeclarativeNetworkAccessManagerFactory and implement the virtual PySide.QtDeclarative.QDeclarativeNetworkAccessManagerFactory.create() method, then assign it to the relevant QML engine using QDeclarativeEngine.setNetworkAccessManagerFactory() .
Note the QML engine may create PySide.QtNetwork.QNetworkAccessManager instances from multiple threads. Because of this, the implementation of the PySide.QtDeclarative.QDeclarativeNetworkAccessManagerFactory.create() method must be 可重入 . In addition, the developer should be careful if the signals of the object to be returned from PySide.QtDeclarative.QDeclarativeNetworkAccessManagerFactory.create() are connected to the slots of an object that may be created in a different thread:
For more information about signals and threads, see 线程和 QObject and 信号和槽跨线程 .
另请参阅
NetworkAccessManagerFactory example
参数: | parent – PySide.QtCore.QObject |
---|---|
返回类型: | PySide.QtNetwork.QNetworkAccessManager |
Creates and returns a network access manager with the specified parent . This method must return a new PySide.QtNetwork.QNetworkAccessManager instance each time it is called.
Note: this method may be called by multiple threads, so ensure the implementation of this method is reentrant.