当前位置:编程学习 > wap >>

开发板内存资源有限,QT又占用内存大 怎么解决?

下面是开发板使用free命令打印的消息,也就是free的内存只有24M左右。
              total         used         free           
  Mem:        77036        52896        24140     
 Swap:            0            0            0
Total:        77036        52896        24140

用QT编写的窗口中有很多关于窗口跳转与消息队列接收等等,轻松超越24M啊 怎么解决?

我用QT Creator4.7在windows上编写的很简单的示例程序,发现占有8M内存,这占用也太大了吧。
示例程序代码
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Dialog w;
    w.show();
    
    return a.exec();
}

/*****dialog.cpp*****/
#include "dialog.h"
#include "ui_dialog.h"

Dialog::Dialog(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::Dialog)
{
    ui->setupUi(this);
}

Dialog::~Dialog()
{
    delete ui;
}

/****dialog.ui********/

<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
 <class>Dialog</class>
 <widget class="QDialog" name="Dialog">
  <property name="geometry">
   <rect>
    <x>0</x>
    <y>0</y>
    <width>320</width>
    <height>240</height>
   </rect>
  </property>
  <property name="windowTitle">
   <string>Dialog</string>
  </property>
  <widget class="QWidget" name="layoutWidget">
   <property name="geometry">
    <rect>
     <x>10</x>
     <y>30</y>
     <width>301</width>
     <height>171</height>
    </rect>
   </property>
   <layout class="QGridLayout" name="gridLayout">
    <property name="sizeConstraint">
     <enum>QLayout::SetNoConstraint</enum>
    </property>
    <item row="0" column="0">
     <widget class="QPushButton" name="pushButton_2">
      <property name="text">
       <string>hello world</string>
      </property>
     </widget>
    </item>
   </layout>
  </widget>
 </widget>
 <layoutdefault spacing="6" margin="11"/>
 <resources/>
 <connections/>
</ui>


运行后在windows的任务管理器中查看内存使用8848K。

请问大家 有什么办法解决么? 当窗口很多时,跳转要等10S多,而且等的时候出现QVFB的蓝色的底层,很不舒服。 开发板内存 QT 开发板内存少 QT内存资源占用大 QT运行卡 --------------------编程问答-------------------- 你用的是什么板子。 --------------------编程问答--------------------
引用 1 楼 fkeujjpdc 的回复:
你用的是什么板子。
 
 达芬奇的DM365板  内存有128M 48M分配给了CPU与DSP通道用的 写死的  --------------------编程问答-------------------- 编译成release的吗?release用QtGui,QtWidgets,QtCore的话应该没这么大啊 --------------------编程问答--------------------
引用 3 楼 foxyz 的回复:
编译成release的吗?release用QtGui,QtWidgets,QtCore的话应该没这么大啊
 
是编译release的  真没错! --------------------编程问答-------------------- 24M太小了,无解 --------------------编程问答-------------------- 换GTK去做了,全C语言开发,占用资源少 --------------------编程问答-------------------- 同问。
补充:移动开发 ,  Qt
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,