my $firsttime = 1; foreach my $id (@list_o_object_ids) { unless ($firsttime) { unlock_tables(); lock_db_tables(); } else { $firsttime = 0; } my $obj = new Thingy($id); # gets stuff from db # make changes, save back to db. }