Instead passing value to execute you can use member variable and parameterized constructor to pass the value you wanted and it can be used in execute
method as:
public MyScheduleClass implements Schedulable
{
public String loginString;
public MyScheduleClass(String whatyouwanthereStr)
{
// Any complex logic before
this.loginString = whatyouwanthereStr;
}
public void execute(SchedulableContext SC)
{
System.debug(' LoginString '+this.loginString);
// Perform other logic, create new String and then reschedule if need
this.loginString = 'http://maNeuURLisThiss';
MyScheduleClass sjob= new MyScheduleClass(this.loginString);
System.schedule('Scheduled with New URL', cronExpression, sjob);
}
}
You cannot pass extra arguments in execute
method.