X-Git-Url: http://xvm.mit.edu/gitweb/invirt/third/libt4.git/blobdiff_plain/5987a5357ccfd818d540a7aa58eb498a1be07aa1..e0c49ff6ba44cf5b47ab91d58b67763f5a1c7a58:/lock_smain.cc diff --git a/lock_smain.cc b/lock_smain.cc index 086186e..64f7985 100644 --- a/lock_smain.cc +++ b/lock_smain.cc @@ -1,37 +1,20 @@ -#include "rpc/rpc.h" -#include -#include -#include -#include #include "lock_server.h" -#include "paxos.h" -#include "rsm.h" -// Main loop of lock_server - -char tprintf_thread_prefix = 's'; - -int -main(int argc, char *argv[]) -{ +int main(int argc, char *argv[]) { + global = new t4_state('s'); setvbuf(stdout, NULL, _IONBF, 0); setvbuf(stderr, NULL, _IONBF, 0); - srandom(getpid()); - if(argc != 3){ - fprintf(stderr, "Usage: %s [master:]port [me:]port\n", argv[0]); + LOG_NONMEMBER << "Usage: " << argv[0] << " [master:]port [me:]port"; exit(1); } rsm rsm(argv[1], argv[2]); - lock_server ls(&rsm); - rsm.set_state_transfer(&ls); + lock_server ls(rsm); - rsm.reg(lock_protocol::acquire, &lock_server::acquire, &ls); - rsm.reg(lock_protocol::release, &lock_server::release, &ls); - rsm.reg(lock_protocol::stat, &lock_server::stat, &ls); + rsm.start(); while(1) - sleep(1000); + std::this_thread::sleep_for(milliseconds(1000)); }