Mercurial > hg > freeDiameter
comparison doc/dbg_interactive.py.sample @ 641:69d3579f6c6c 1.0.3-rc3
First version of dbg_interactive is complete
author | Sebastien Decugis <sdecugis@nict.go.jp> |
---|---|
date | Tue, 21 Dec 2010 10:29:46 +0900 |
parents | 237cf6339546 |
children | 5e5d8152c229 |
comparison
equal
deleted
inserted
replaced
640:237cf6339546 | 641:69d3579f6c6c |
---|---|
645 | 645 |
646 | 646 |
647 ############# PEERS ############ | 647 ############# PEERS ############ |
648 | 648 |
649 # Get the list of peers defined in the system | 649 # Get the list of peers defined in the system |
650 # (well, we are supposed actually to readlock fd_g_peers_rw before doing this, but it should be fine most of the time) | 650 # (we are supposed to readlock fd_g_peers_rw before accessing this list) |
651 cvar.fd_g_peers_rw.rdlock() | |
651 peers = cvar.fd_g_peers.enum_as("struct peer_hdr *") | 652 peers = cvar.fd_g_peers.enum_as("struct peer_hdr *") |
653 cvar.fd_g_peers_rw.unlock() | |
652 for p in peers: | 654 for p in peers: |
653 print "Peer:", p.info.pi_diamid | 655 print "Peer:", p.info.pi_diamid |
654 | 656 |
655 | 657 |
656 # Create a new peer | 658 # Create a new peer |
724 np = peer_info() | 726 np = peer_info() |
725 ep.add_merge(np.pi_endpoints) | 727 ep.add_merge(np.pi_endpoints) |
726 fd_ep_dump(0, np.pi_endpoints) | 728 fd_ep_dump(0, np.pi_endpoints) |
727 | 729 |
728 | 730 |
731 | |
732 ############# POSIX functions wrappers ############ | |
733 | |
734 # The interface also provides wrappers around base POSIX | |
735 # synchronization functions: | |
736 | |
737 m = pthread_mutex_t() | |
738 m.lock() | |
739 m.unlock() | |
740 | |
741 c = pthread_cond_t() | |
742 c.signal() | |
743 c.broadcast() | |
744 c.wait(m) | |
745 c.timedwait(m, 5) # it takes a relative time | |
746 | |
747 r = pthread_rwlock_t() | |
748 r.rdlock() | |
749 r.unlock() | |
750 r.wrlock() |