October 2013
Intermediate to advanced
368 pages
9h 20m
English
Now that we’ve designed and implemented a ThreadPool, let’s take advantage of it. The first step is to change
usersInBox
to take a listener, or callback, as an argument. We update its code to return User objects to the client via the callback so that they can be asynchronously gathered.
The listener implementation in our test simply tracks users passed to its
updated
callback.
| c9/13/GeoServerTest.cpp | |
| | TEST(AGeoServer_UsersInBox, AnswersUsersInSpecifiedRange) { |
| * | class GeoServerUserTrackingListener: public GeoServerListener { |
| * | public: |
| * | void updated(const User& user) { Users.push_back(user); } |
| * | vector<User> Users; |
| * | } trackingListener; |
| | |
| | server.updateLocation( |
| | bUser, Location{aUserLocation.go(Width ... |