public Ports(int size) {
pa = new ArrayList<Port>(size);
num_messages = new ArrayList<>(size);
num_ports = size;
sem_mutex_send = new fairSemaphore(1);
sem_receive = new fairSemaphore(0);
mutex = new fairSemaphore(1);
for (int i = 0; i < num_ports; i++) {
pa.add(new Port<T>());
num_messages.add(0);
}