void run() { for(int i=0; i<kNumEnqueueByChild; ++i) { int counter = ++m_counter; Poco::DateTime datetime; datetime += Poco::Timespan(m_rnd.next(kScheduleMaxTime)*1000); m_queue.enqueueNotification(new ChildNotification(counter, m_name, datetime), datetime.timestamp()); datetime.makeLocal(Poco::Timezone::tzd()); m_msg.Message(Poco::format(" enqueueNotification #%d from %s (%s)" , counter , m_name , Poco::DateTimeFormatter::format(datetime.timestamp(), "%H:%M:%S.%i"))); } }
//---------------------------------------- // main //---------------------------------------- int main(int /*argc*/, char** /*argv*/) { PrepareConsoleLogger logger(Poco::Logger::ROOT, Poco::Message::PRIO_INFORMATION); ScopedLogMessage msg("DateTimeTest ", "start", "end"); Poco::DateTime dateTime; msg.Message(" Current DateTime (UTC)"); DisplayDateTime(dateTime, msg); msg.Message(Poco::format(" Current DateTime (Locat Time: %s [GMT%+d])", Poco::Timezone::name(), Poco::Timezone::tzd()/(60*60))); dateTime.makeLocal(Poco::Timezone::tzd()); DisplayDateTime(dateTime, msg); msg.Message(Poco::format(Poco::DateTimeFormatter::format(dateTime, " DateTimeFormatter: %w %b %e %H:%M:%S %%s %Y") , Poco::Timezone::name())); return 0; }
//-------------------------------------------------------------- Poco::DateTime nowLocal() { Poco::DateTime nowLocal; nowLocal.makeLocal(Poco::Timezone::tzd()); return nowLocal; }