Commit 1785ef27 authored by yiwenshao's avatar yiwenshao

use move in test_memory

parent 0ab4db45
......@@ -18,7 +18,7 @@ using std::string;
using std::to_string;
static std::string embeddedDir="/t/cryt/shadow";
std::map<std::string,std::vector<std::string>> gfm;
/*init global full backup. */
static
......@@ -26,6 +26,7 @@ void initGfb(vector<string> field_names,
vector<int> field_types,
vector<int>field_lengths,
std::string db,std::string table){
std::map<std::string,std::vector<std::string>> gfm;
std::string prefix = std::string("data/")+db+"/"+table+"/";
for(unsigned int i=0u; i<field_names.size(); i++) {
std::string filename = prefix + field_names[i];
......@@ -36,25 +37,32 @@ void initGfb(vector<string> field_names,
load_string_file(filename,column,field_lengths[i]);
}
gfm[field_names[i]] = std::move(column);
// vector<string>().swap(gfm[field_names[i]]);
}//get memory 31%
for(unsigned int i=0u; i<field_names.size(); i++) {
gfm.erase(field_names[i]);
vector<string>().swap(gfm[field_names[i]]);
}
return;
}
class token{
public:
int a;
token():a(0){}
};
int
main(int argc, char* argv[]){
vector<int> lengths{20,15,256,11};
vector<int> lengths{20,15,256,20};
vector<int> types{8,8,253,8};
std::vector<std::string> names{"BLWQNYLYOWoEq",
"HZYMDVEERKoOrder",
"HEPOWBSYEVoADD",
"OHGNYTNLSCoASHE",
"cdb_saltNDFPJCCDAO"
std::vector<std::string> names{"JKIIHGGNTDoEq",
"UOURXXPAMUoOrder",
"WAVWPSYCINoADD",
"cdb_saltMAANVANOOE"
};
// token * pp = new token[80000000];
// delete [] pp;
initGfb(names, types, lengths, "micro_db", "int_table");
return 0;
}
......
......@@ -434,7 +434,7 @@ void load_num_file(std::string filename,std::vector<std::string> &res){
std::ifstream infile(filename);
std::string line;
while(std::getline(infile,line)){
res.push_back(line);
res.push_back(std::move(line));
}
infile.close();
}
......@@ -455,7 +455,7 @@ void load_string_file(std::string filename, std::vector<std::string> &res,unsign
int fd = open(filename.c_str(),O_RDONLY);
if(fd==-1) assert(0);//reading from -1 may cause errors
while(read(fd,buf,length)!=0){
res.push_back(std::string(buf,length));
res.push_back(std::move(std::string(buf,length)));
}
close(fd);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment