SORU
2 Mart 2011, ÇARŞAMBA


Mac OS X clock_gettime alternatif

MacPorts ile gerekli kütüphaneleri yükledikten sonra Mac OS X üzerinde yazdığım bir programı derlerken bu hatayı alıyorum:

In function 'nanotime':
error: 'CLOCK_REALTIME' undeclared (first use in this function)
error: (Each undeclared identifier is reported only once
error: for each function it appears in.)

clock_gettime Mac OS X orada almak için alternatif bir araçtır uygulanmadı görünüyorepoch zamannanosaniye? Ne yazık ki gettimeofdaymikrosaniye.

CEVAP
17 Temmuz 2011, Pazar


Farklı cevaplar, bloglar, ve başlıkları araştırma saat sonra, geçerli saati almak için taşınabilir bir yol buldum:

#include <time.h>
#include <sys/time.h>

#ifdef __MACH__
#include <mach/clock.h>
#include <mach/mach.h>
#endif



struct timespec ts;

#ifdef __MACH__ // OS X does not have clock_gettime, use clock_get_time
clock_serv_t cclock;
mach_timespec_t mts;
host_get_clock_service(mach_host_self(), CALENDAR_CLOCK, &cclock);
clock_get_time(cclock, &mts);
mach_port_deallocate(mach_task_self(), cclock);
ts.tv_sec = mts.tv_sec;
ts.tv_nsec = mts.tv_nsec;

#else
clock_gettime(CLOCK_REALTIME, &ts);
#endif

ya da bu fikri atın: https://gist.github.com/1087739

Bu birisi size zaman kazandırır umarım. Şerefe!

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BioHunta

    BioHunta

    28 Mayıs 2006
  • gsipek

    gsipek

    20 Temmuz 2007
  • Kevin Bruckert

    Kevin Brucke

    30 Aralık 2006