std::chrono::system_clock::time_since_epoch().count() me da un resultado en microsegundos. Quiero obtener la hora actual en nanosegundos. Pero no puedo usar high_resolution_clock porque en mi sistema es un alias en steady_clock (el reloj monotónico). Sé que mi sistema es capaz de mostrar los nanosegundos, porque si uso clock_gettime(CLOCK_REALTIME, &ts) obtengo una hora de . . . Read more
Estoy utilizando chrono y c++20. Tengo una estructura tm para la zona horaria de EST, pero no puedo averiguar cómo obtener la hora correspondiente en la zona horaria GMT. Esto es lo que he estado pensando: tm timeInAmerica = {0}; timeInAmerica.tm_year = 75;//1975 timeInAmerica.tm_mon = 0;//enero timeInAmerica.tm_mday = 31; timeInAmerica.tm_hour . . . Read more
Estoy intentando escribir una cadena de tiempo con precisión de milisegundos en MSVC 19.11 con /stc:c++latest. Con esto obtengo una precisión de 7 dígitos, lo cual no quiero. auto now = std::chrono::system_clock::now(); std::cout << std::format(“{0:%d.%m.%Y %H:%M:%S}”, now); Intenté std::cout << std::format(“{0:%d.%m.%Y %H:%M:%S.3}”, now); y algunas posibilidades de std::setprecision(3) en vano. . . . Read more
Estoy tratando de compilar mi programa en mingw64 (GCC v11.2). Tengo la siguiente estructura: En un archivo de encabezado: struct Timer { std::chrono::time<em>point< std::chrono::steady</em>clock > start; std::chrono::time<em>point< std::chrono::steady</em>clock > end; <pre><code>Timer( ); ~Timer( ); </code></pre> }; <code> En un archivo fuente: </code> util::Timer::Timer( ) : start( std::chrono::high<em>resolution</em>clock::now( ) ) { . . . Read more
Estoy intentando convertir correctamente un std::chrono::time_point<std::chrono::steady_clock> (C++) a un google.protobuf.Timestamp (protocol buffers) y luego de vuelta a un steady_clock. Preferiría que se represente con una resolución de nanosegundos, ya que los datos que planeo serializar/deserializar son mediciones con marca de tiempo que se evaluarán en un contexto diferente. Como no . . . Read more