I think the stacking operation in your case is expensive. I checked the PRelu code and it seems to be done in C. But, I think doing the operation in place should make it fast enough.
class ChannelwiseThreshold(nn.Module):
    def __init__(self):
        super(ChannelwiseThreshold, self).__init__()
    
    def forward(self, x, thresholds):
        for i in range(len(thresholds)):
            F.threshold_(x[:, i], thresholds[i], 0)
        
        return x