代码拉取完成,页面将自动刷新
#include "CryptTask.h"
#include "crypt.h"
#include <chrono>
#include <iostream>
#include <memory>
#include <thread>
//初始化加解密秘钥
void CryptTask::Init(std::string passwd){
enc_ = std::make_shared<Crypt>();
enc_->Init(passwd);
}
void CryptTask::Main(){
std::cout<<"begin CryptTask::Main()"<<std::endl;
while(!is_exit_){
auto data = PopFront();
if(!data){
std::this_thread::sleep_for(std::chrono::milliseconds(10));
continue;
}
auto out = Data::Make(mem_pool_);
int outsize = data->size() + enc_->getPadding(data->size());
int data_size = 0;
bool is_end = data->end();
out->New(outsize);
if(is_encrypt_){
data_size = enc_->Encrypt((char*)data->data(), data->size(), (char*)out->data(),is_end);
}else{
data_size = enc_->Encrypt((char*)data->data(), data->size(), (char*)out->data(),is_end);
}
out->set_size(data_size);
std::cout<<"<"<<out->size()<<">"<<std::flush;
out->set_end(data->end());
if(next_){
next_->PushBack(out);
}
if(data->end()){
break;
}
}
std::cout<<"begin CryptTask::End()"<<std::endl;
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。