逻辑优化

This commit is contained in:
JIe 2024-09-24 16:59:08 +08:00
parent a1d7369096
commit 787a688af6

View File

@ -42,7 +42,9 @@ public:
std::string GetTimeNow(){ std::string GetTimeNow(){
auto now = std::chrono::system_clock::now(); auto now = std::chrono::system_clock::now();
auto now_c = std::chrono::system_clock::to_time_t(now); auto now_c = std::chrono::system_clock::to_time_t(now);
return std::ctime(&now_c); char buffer[32];
ctime_s(buffer, 32, &now_c);
return std::string(buffer);
} }
template<SupportString T> template<SupportString T>
@ -95,10 +97,12 @@ public:
Log("Send: " + reallyCommand); Log("Send: " + reallyCommand);
std::this_thread::sleep_for(10ms); std::this_thread::sleep_for(10ms);
// char buffer[ser.available()] = {0}; // char buffer[ser.available()] = {0};
char* buffer = (char*)malloc(sizeof(char)*ser.available()); auto availableSize = ser.available();
std::cout<<sizeof(buffer)<<std::endl; auto buffer = new char[availableSize];
auto size = ser.readBytes(buffer, sizeof(buffer), timeout); std::memset(buffer, 0, availableSize);
auto size = ser.readBytes(buffer, availableSize, timeout);
if(size > 0){ if(size > 0){
buffer[size] = '\0';
response = std::string(buffer); response = std::string(buffer);
Log("Receive: " + response); Log("Receive: " + response);
delete[] buffer; delete[] buffer;
@ -123,8 +127,9 @@ public:
Log("Send : " + reallyCommand); Log("Send : " + reallyCommand);
while(std::chrono::system_clock::now() < endTime){ while(std::chrono::system_clock::now() < endTime){
std::this_thread::sleep_for(10ms); std::this_thread::sleep_for(10ms);
auto buffer = new char[ser.available()]; auto availableSize = ser.available();
auto size = ser.readBytes(buffer, sizeof(buffer), timeout); auto buffer = new char[availableSize];
auto size = ser.readBytes(buffer, availableSize, timeout);
auto str = std::string(buffer); auto str = std::string(buffer);
delete[] buffer; delete[] buffer;
if(size > 0) if(size > 0)