stevefolder/vendor/bundle/ruby/3.1.0/gems/ffi-1.15.5/samples/gettimeofday.rb
2022-02-04 18:48:09 -05:00

19 lines
427 B
Ruby

require 'ffi'
require 'rbconfig'
class Timeval < FFI::Struct
layout tv_sec: :ulong, tv_usec: :ulong
end
module LibC
extend FFI::Library
if FFI::Platform.windows?
ffi_lib RbConfig::CONFIG["LIBRUBY_SO"]
else
ffi_lib FFI::Library::LIBC
end
attach_function :gettimeofday, [ :pointer, :pointer ], :int
end
t = Timeval.new
LibC.gettimeofday(t.pointer, nil)
puts "t.tv_sec=#{t[:tv_sec]} t.tv_usec=#{t[:tv_usec]}"