/* * * Name Lawrence Bush * Student Number 660 220 742 * Email bushl2@rpi.edu, Lawrence_Bush@dps.state.ny.us * Class Distributed Algorithms and Systems (Spring 2002) * Professor Costas Busch * * Final Project Implement a Lock-Free Linked List (based on Valois' paper) * */ // ////////////////////////////////////////////////////////////////////// // Description of Program Files // // File Purpose // ---- ------- // // lock.h This file declares the Lock class interface. // It conatains a CriticalSection pointer member variable. // It also conatains a constructor, destructor, and an unLock function. // #if !defined(AFX_lock_H__A892AC06_6934_41DF_A784_5C8E45F6EEED__INCLUDED_) #define AFX_lock_H__A892AC06_6934_41DF_A784_5C8E45F6EEED__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #include "CriticalSection.h" // ************************************* // ************************************* // *** *** // *** Lock Structure *** // *** Declaration *** // *** *** // ************************************* // ************************************* class Lock { public: // Initializes constructors, destructors // and the class interface functions. Lock(CriticalSection * pCritSect); ~Lock(); unLock(); private: // Initialize the data member. // This points to a critical section (my construct) // so the class functions know who to operate on. CriticalSection * m_pCritical; }; #endif