当前位置: 首页 > news >正文

网页设计实训报告800字aso应用商店优化原因

网页设计实训报告800字,aso应用商店优化原因,网站客服悬浮,网站打开速度慢优化原本项目中使用QSharedMemory的方法来判断当前是否已存在运行的实例,但在MacOS上,当程序异常崩溃后,QSharedMemory没有被正常销毁,导致应用程序无法再次被打开。 对此,Qt assistant中有相关说明: 摘抄 qt-s…

        原本项目中使用QSharedMemory的方法来判断当前是否已存在运行的实例,但在MacOS上,当程序异常崩溃后,QSharedMemory没有被正常销毁,导致应用程序无法再次被打开。

        对此,Qt assistant中有相关说明:

        摘抄 qt-solutions/qtsingleapplication at master · qtproject/qt-solutions (github.com) 实现了一个single application的类,记录下来:

main.cpp

#include "mainwindow.h"
#include "singleapplication.h"int main(int argc, char *argv[])
{CSingleApplication a(argc, argv);if (a.isRunning()) {return 0;}MainWindow w;w.show();a.setActivationWindow(&w);return a.exec();
}

singleapplication.cpp

#include "singleapplication.h"
#include <QFileInfo>
#include <QLocalSocket>
#include <QLocalServer>
#include <QWidget>CSingleApplication::CSingleApplication(int& argc, char** argv): QApplication(argc, argv)
{m_strServerName = QFileInfo(QCoreApplication::applicationFilePath()).fileName();initLocalConn();
}CSingleApplication::~CSingleApplication()
{}bool CSingleApplication::isRunning()
{return m_isRunning;
}void CSingleApplication::setActivationWindow(QWidget* w)
{m_pActivateWin = w;
}void CSingleApplication::initLocalConn()
{m_isRunning = false;QLocalSocket socket;socket.connectToServer(m_strServerName);if (socket.waitForConnected(200)) {m_isRunning = true;return;}createLocalServer();
}void CSingleApplication::createLocalServer()
{m_pLocalServer = new QLocalServer(this);connect(m_pLocalServer, &QLocalServer::newConnection, this, &CSingleApplication::onNewConnection);if (!m_pLocalServer->listen(m_strServerName)) {if (QAbstractSocket::AddressInUseError == m_pLocalServer->serverError()) {QLocalServer::removeServer(m_strServerName);m_pLocalServer->listen(m_strServerName);}}
}void CSingleApplication::activateWindow()
{if (nullptr != m_pActivateWin) {m_pActivateWin->show();m_pActivateWin->raise();m_pActivateWin->activateWindow();}
}void CSingleApplication::onNewConnection()
{if (nullptr == m_pLocalServer) {return;}QLocalSocket* socket = m_pLocalServer->nextPendingConnection();if (nullptr != socket) {socket->waitForReadyRead(300);delete socket;activateWindow();}
}

singleapplication.h

#ifndef CSINGLEAPPLICATION_H
#define CSINGLEAPPLICATION_H#include <QApplication>class QLocalServer;class CSingleApplication : public QApplication
{
public:CSingleApplication(int& argc, char** argv);virtual ~CSingleApplication() override;public:bool isRunning();void setActivationWindow(QWidget* w);private:bool          m_isRunning = false;QWidget*      m_pActivateWin = nullptr;QString       m_strServerName;QLocalServer* m_pLocalServer = nullptr;void initLocalConn();void createLocalServer();void activateWindow();private slots:void onNewConnection();
};#endif // CSINGLEAPPLICATION_H

http://www.yidumall.com/news/50209.html

相关文章:

  • 网站首页栏目怎么做朝阳区seo搜索引擎优化怎么样
  • 泰安网站建设网络营销的四个策略
  • 做网站还有市场吗北京网优化seo公司
  • 三只松鼠网站推广策略赣州seo
  • 做网站图片处理问题视频外链在线生成
  • 东莞市公租房申请网站-建设网百度账号免费注册
  • ubuntu系统做网站如何快速搭建一个网站
  • 甘肃做高端网站的公司南京seo推广优化
  • 重庆长寿网站建设上海专业的seo公司
  • 如何把自己电脑做网站服务器2023知名品牌营销案例100例
  • 网站推广视频的服务方案什么叫做seo
  • 建设团队网站关键词小说
  • 百度站长验证网站策划推广活动方案
  • 做电影网站哪个系统好百度账号管理
  • 红色页面网站百度seo推广价格
  • 网站建设项目经理招聘b站免费推广app大全
  • 网站建设所需服务器费用网站如何做关键词优化
  • 做酒店经理的一些网站百度引擎
  • web做网站怎么添加图片搜图片找原图
  • 网站模版怎么做的营销策划经典案例
  • 出口外贸平台有哪些天津seo博客
  • 门户网站开发视频谷歌广告联盟怎么做
  • 电子商务网站建设可用性五个方面北京网站建设公司大全
  • 怎么用php做新闻网站潍坊疫情最新消息
  • 网站面包屑导航设计即位置导航网站数据统计工具
  • 做淘宝的导购网站百度网络推广怎么做
  • 日本网站建设电商网课
  • 山东住房和城乡建设部网站首页谷歌chrome浏览器下载
  • 网站ico湖南网站建设工作室
  • 网站点击量在哪里看seo实战技术培训