|
@@ -21,34 +21,33 @@ int main() {
|
|
|
while (myco_worker_is_running(worker_pid) == 0) {
|
|
|
myco_agent_request_resource_list(message_queue_id);
|
|
|
|
|
|
- //printf("%d is still alive.\n", worker_pid);
|
|
|
|
|
|
// check for messages
|
|
|
msg = myco_receive(message_queue_id);
|
|
|
if (strncmp(msg.message, "WORKER: ALLOCATED MEMORY OF SIZE", 20) == 0) {
|
|
|
+ if (DEBUG) {
|
|
|
+ printf("%s", msg.message);
|
|
|
+ }
|
|
|
split_count = 0;
|
|
|
split = strtok(msg.message, " ");
|
|
|
while (split != NULL) {
|
|
|
split_count += 1;
|
|
|
if (split_count == 6) {
|
|
|
resource_size = atoi(split);
|
|
|
- printf("%d\n", resource_size);
|
|
|
}
|
|
|
if (split_count == 8) {
|
|
|
- resource_pointer = (void *)split;
|
|
|
- printf("%p\n", resource_pointer);
|
|
|
+ sscanf(split, "%lx", &resource_pointer);
|
|
|
}
|
|
|
split = strtok(NULL, " ");
|
|
|
}
|
|
|
|
|
|
myco_agent_register_resource(message_queue_id, "MYAGENT_1", "RESOURCE_1", RESOURCE_NOT_TRANSACTIONAL, worker_pid, resource_size, resource_pointer);
|
|
|
- myco_agent_register_resource(message_queue_id, "MYAGENT_1", "RESOURCE_2", RESOURCE_NOT_TRANSACTIONAL, worker_pid, resource_size, resource_pointer);
|
|
|
- printf("%s", msg.message);
|
|
|
}
|
|
|
if (strncmp(msg.message, "WORKER: FREED MEMORY AT", 20) == 0) {
|
|
|
- printf("%s", msg.message);
|
|
|
+ if (DEBUG) {
|
|
|
+ printf("%s", msg.message);
|
|
|
+ }
|
|
|
myco_agent_unregister_resource(message_queue_id, "RESOURCE_1");
|
|
|
- myco_agent_unregister_resource(message_queue_id, "RESOURCE_2");
|
|
|
}
|
|
|
//myresource = myco_agent_request_resource(message_queue_id, "RESOURCE_1");
|
|
|
sleep(1);
|