进程
-一个程序可能对应多个进程
·一个程序多次运行,每次运行产生一个进程
-一个进程可能包含多个程序
·一个程序依赖多个其他动态库
ps:在当代系统中,资源分配的基本单位是进程;而CPU调度执行的基本单位是线程
进程使用示例
(1):建立文件proces文件
(2):在widget.h中编辑
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include <QLineEdit>
#include <QPushButton>
#include <QFileDialog>
#include <QProcess> //进程
#include <QStringList> //执行程序所需头文件
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = 0);
~Widget();
public slots:
void showfile()
{
QString filename = QFileDialog::getOpenFileName();
le->setText(filename);
//启动一个程序
QStringList arg = {filename}; //以Qstringlist形式传参给 xxx.execute() 函数
QProcess qqq; //进程qqq
qqq.execute("notepad",arg); //notepad记事本软件 arg要打开的文件名
}
private:
QLineEdit *le;
QPushButton *pb;
};
#endif // WIDGET_H
(3):在widget.cpp中编辑
#include "widget.h"
#include <QVBoxLayout> //垂直布局
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
le = new QLineEdit;
pb = new QPushButton("showtex");
QVBoxLayout *vbox = new QVBoxLayout;
vbox->addWidget(le);
vbox->addWidget(pb);
setLayout(vbox);
connect(pb,SIGNAL(clicked(bool)),this,SLOT(showfile()));//连接槽函数
}
Widget::~Widget()
{
}