The parameter needs to be passed to the callback function in the wp_schedule_single_event function, not the add_action function.
Try this:
add_action('z_purge_products_cache', array($this, 'purge_products_cache'));
Then schedule the event, putting the parameter in an array:
wp_schedule_single_event(time() + 20, 'z_purge_products_cache', array($asins_r));
Your purge_products_cache
function will be called with parameter $asins_r
.