From 604095672f49016a734adba95b358aeb05ccc9c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9F=D0=B5=D0=BB=D0=B8=D0=BF=D0=B5=D0=BD=D0=BA=D0=BE=20?= =?UTF-8?q?=D0=98=D0=B2=D0=B0=D0=BD?= Date: Fri, 11 Oct 2019 09:55:45 +0000 Subject: [PATCH] git-svn-id: svn://db.shs.com.ru/pip@859 12ceb7fc-bf1f-11e4-8940-5bc7170c53b5 --- main.cpp | 39 ++++++++++++++++++++------------ src_main/io_devices/piserial.cpp | 1 + 2 files changed, 26 insertions(+), 14 deletions(-) diff --git a/main.cpp b/main.cpp index 50ce2106..52f75dbd 100644 --- a/main.cpp +++ b/main.cpp @@ -318,6 +318,19 @@ inline PICout operator <<(PICout s, const PIHash & v) { int main() { + PIConnection con; + PIString _str = "[connection]\ndevice.d = ser://COM2:9600\n"; + con.configureFromString(&_str); + con.start(); + PISerial * s = con.deviceByName("d")->cast(); + while (1) { + piMSleep(500); + piCout << s; + if (s) + piCout << s->isOpened(); + } + return 0; + PIHash h; h["1"] = "x"; h["2"] = "bbb"; @@ -331,37 +344,35 @@ int main() { //h.reserve(64); //piCout << h.keys() << h.values(); //piCout << (1 << 2); - PIHash h2; - PIMap m2; - PIVector keys; - PIString prefix = "1234567890fgbjyfjyjbghjkbgkbgjgsfh jhfgj ghfjhjfjf"; + PIHash h2; + PIMap m2; + PIString prefix = "1234567890"; PITimeMeasurer tm; double el = 0.; - for (int i=0; i<100000; ++i) keys << randomi(); - piCout << keys.size(); + tm.reset(); - for (int i=0; i<100000; ++i) { - h2[keys[i]] = prefix; + for (int i=0; i<10000; ++i) { + h2[prefix + PIString::fromNumber(i)+"1234567890"] = PIString::fromNumber(randomi()); } el = tm.elapsed_m(); piCout << el << h2.capacity(); tm.reset(); - for (int i=0; i<100000; ++i) { - m2[keys[i]] = prefix; + for (int i=0; i<10000; ++i) { + m2[prefix + PIString::fromNumber(i)+"1234567890"] = PIString::fromNumber(randomi()); } el = tm.elapsed_m(); piCout << el; piCout << "*********"; PIString _s; tm.reset(); - for (int i=0; i<100000; ++i) { - _s = h2.value(keys[i]); + for (int i=10000; i>=0; --i) { + _s = h2.value(prefix + PIString::fromNumber(i)+"1234567890"); } el = tm.elapsed_m(); piCout << el << h2.capacity(); tm.reset(); - for (int i=0; i<100000; ++i) { - _s = m2.value(keys[i]); + for (int i=10000; i>=0; --i) { + _s = m2.value(prefix + PIString::fromNumber(i)+"1234567890"); } el = tm.elapsed_m(); piCout << el; diff --git a/src_main/io_devices/piserial.cpp b/src_main/io_devices/piserial.cpp index b3d3c851..5a682839 100755 --- a/src_main/io_devices/piserial.cpp +++ b/src_main/io_devices/piserial.cpp @@ -348,6 +348,7 @@ int PISerial::convertSpeed(PISerial::Speed speed) { case S4000000: return B4000000; default: break; } + piCoutObj << "Warning: Unknown speed" << (int)speed << ", using 115200"; return B115200; }