Qt共享内存读写
2016-01-25 15:51
429 查看
#include
"mainwindow.h"
"mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
qmemory.setKey ("zzw");
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_clicked()
{
QString s="zzw123";
ui->label->setText (s);
QBuffer buffer;
buffer.open (QIODevice::ReadWrite);
QDataStream in(&buffer);
in<<s;
qmemory.create (s.size ());
qmemory.lock ();
char* to=(char*)qmemory.data ();
const char* from=buffer.data ().data ();
memcpy (to,from,qmemory.size ());
qmemory.unlock ();
}
void MainWindow::on_pushButton_2_clicked()
{
if( qmemory.isAttached ()){
QMessageBox::information(this,"info","attached");
}else{
qmemory.attach ();
QBuffer nbuffer;
nbuffer.setData((char*)qmemory.constData(), qmemory.size());
nbuffer.open (QIODevice::ReadWrite);
QDataStream out(&nbuffer);
QString s;
out>>s;
ui->label->setText (s);
qmemory.detach ();
}
}
相关文章推荐
- QT学习 第一章:基本对话框
- 使用Shiboken为C++和Qt库创建Python绑定
- IE7降低内存和降低CPU的几个技巧
- 如何高效的使用内存
- DOS下内存的配置
- XP/win2003下发现1G的内存比512M还慢的解决方法
- PowerShell实现动态获取当前脚本运行时消耗的内存
- C#实现把dgv里的数据完整的复制到一张内存表的方法
- SQL语句实现查询SQL Server内存使用状况
- C语言内存对齐实例详解
- 深入学习C语言中memset()函数的用法
- 全局变量与局部变量在内存中的区别详细解析
- VB读取线程、句柄及写入内存的API代码实例
- php运行提示:Fatal error Allowed memory size内存不足的解决方法
- IE浏览器IFrame对象内存不释放问题解决方法
- C#之CLR内存深入分析
- JavaScript 变量、作用域及内存
- JavaScript避免内存泄露及内存管理技巧
- Qt定时器和随机数详解
- J2ME编程中的几个重要概念介绍