American dialectologists have evidence showing wait on (sense 3) to be more a Southern than a Northern form in speech. Handbook writers universally denigrate wait on and prescribe wait for in writing. Our evidence from printed sources does not show a regional preference; it does show that the handbooks' advice is not based on current usage.
Advance travel planning and early visa application are important. If you plan to apply for a nonimmigrant visa to come to the United States as a temporary visitor, please review the current wait time for an interview using the tool below. Not all visa applications can be completed on the day of the interview; please read the information below for more details.
The estimated wait time to receive a nonimmigrant visa interview appointment at a U.S. embassy or consulate and is based on workload and staffing and can vary from week to week. The information provided is an estimate and does not guarantee the availability of an appointment.
Wait times for applicants eligible for Interview Waiver are applicable only for locations where applicants schedule appointments to submit their passport and any required documents to a U.S. embassy or consulate. The wait time estimate does not account for the time required for a consular officer to adjudicate the application nor mailing time of passports or other documents. Refer to the website of the Embassy or Consulate Visa Section where you will apply to determine your eligibility for Interview Waiver and for instructions for submitting a nonimmigrant visa application. Note that applicants must be a national or resident of the country where they are applying to be eligible to apply via Interview Waiver.
Consular sections overseas may be able to expedite your interview date if there is an urgent, unforeseen situation such as a funeral, medical emergency, or school start date. The process to request an expedited nonimmigrant visa interview varies by location. You should refer to the instructions on the website of the Embassy or Consulate Visa Section where you will interview, or on their online appointment scheduling site. You will need to provide proof of the need for an earlier appointment.
In all cases: You must first submit the online visa application form (DS-160), pay the application fee, and schedule the first available interview appointment. Only at this point will a consular section consider your request for an expedited appointment.
Note: Travel for the purpose of attending weddings and graduation ceremonies, assisting pregnant relatives, participating in an annual business/academic/professional conference, or enjoying last-minute tourism does not qualify for expedited appointments. For such travel, please schedule a regular visa appointment well in advance.
These estimates do not include time required for administrative processing, which may affect some applications. When administrative processing is required, the timing will vary based on individual circumstances of each case.
There are only two possible outcomes for U.S. visa applications. The consular officer will either issue or refuse the visa. If a visa applicant has not established that he or she is eligible for a visa, the consular officer must refuse that application. However, some refused visa applications may require further administrative processing. When administrative processing is required, the consular officer will inform the applicant at the end of the interview. The duration of the administrative processing will vary based on the individual circumstances of each case. At the conclusion of the administrative processing period, the consular officer might conclude that an applicant is now qualified for the visa for which he or she applied. The officer may also conclude that the applicant remains ineligible for a visa. Visa applicants are reminded to apply early for their visas, well in advance of the anticipated travel date.
Important Notice: Except in cases of emergency travel (i.e. serious illnesses, injuries, or deaths in your immediate family), before making inquiries about status of administrative processing, applicants should wait at least 180 days from the date of interview or submission of supplemental documents, whichever is later.
In addition, it is important to thoroughly review all information on the specific Embassy or Consulate Visa Section website for local procedures and instructions, such as how to make an interview appointment. Embassy and Consulate websites will also explain any additional procedures for students, exchange visitors and those persons who need an earlier visa interview appointment.
* Wait times are generally the MAXIMUM amount of time you will have to wait to get an appointment. Appointments are continuously being added and you will likely be given an opportunity to move your appointment up as new appointments are opened.
Links to external websites are provided as a convenience and should not be construed as an endorsement by the U.S. Department of State of the views or products contained therein. If you wish to remain on travel.state.gov, click the "cancel" message.
I guess there are times when your script can get ahead of itself in terms of executing code before a previously scripted operation has completed, and putting a wait(x) command after such operations is one way of trying to ensure that the operation completes before continuing with your script.
Apologies if this seems a rather broad/vague discussion. It's stemming from the fact that I'm trying to improve the execution time of a script I have, and the profiler is saying that a lot of time is being spent on these wait commands that I've inserted after the type of operations mentioned above. I appreciate any insight into this or if there are resources available that I can look at, even better. Cheers!
"it seems that you just have to run into certain problems before you know when its required" ... I'd agree with that. Using a wait unnecessarily will slow your code down. I only use it if my code fails and the Wait is the only way to fix it.
I've done a quick search on my code and here are some examples - they all relate to interactions with windows. I couldn't find any examples where core JMP tasks such as table manipulations needed a wait.
Performing a computationally intensive task (loop) and wanting to push information out to the user - you need to gives windows some breathing time to perform the refresh (alternatively in this example a "reshow" message could be sent to the window containing the text box)
StatusMsg was invented before we had the multiple document interface for JMP and so it is unpredictable which window is used to display the message. Using a Wait ensures you have the current windows attention
Case 2: Bad Case - if I open up the JRN as JMP Addin menu, it doesn't work. The log seems to show unknown display boxes (which are contained in JSL at various points). Also, if I just watch these two cases, Case 2 is executing faster than Case 1 even to my eye! And no, in this case all file references are fine, both cases use the exact same JRN/JSL's on my local PC, and even the way I tell it to open in the JMP Addin makes no differences (whether "path">$ADDIN_HOME vs "text">open).
So in my case, it seems even how JMP loads things can matter to the timing. I think in my Case 2 above, JMP is just able to load my JRN and subsequent scripts much faster, but it unfortunately affects the timing in a negative way. Anyways, my approach will be to try some wait(0); 's to see if I can slow JMP down a bit. cheers, dj
Followup. I was fooled here about the timing. As it turns out there this odd checkbox in the Addin wizard: "Use the Here namespace for unqualified JSL variable names". Uncheck it and my problems went away. This explains why my JRN would not execute the JSL in its ButtonBox. -dj
You probably want that checkbox checked. Using the Here Namespace is just good coding and I would encourage you start all your scripts with 'Names Default to Here(1);' If you don't use the here namespace (or a namespace of your choosing) then JMP will assign everything as global variables. For testing and personal code this isn't a big deal, but if you are putting a script into an add-in I'm assuming it's going to be used for production.
Using the Global namespace will surely give issue for production scripts. Most common issue is unintentionally overriding common variables, like "dt" or "datatable". Other issues involve running two scripts or addins at the same time. For example, both may have For() loops, and since the variable "i" is commonly used for For() loops, and "j" for embedded For() loops if they both start running, you may find yourself running an infinite loop where "i" keeps being changed by the two different scripts.
Using the Here Namespace avoids these issues since each script is assigned a temporary namespace as long as the script is open or running. Thus, "i" is local to the script and you won't have to worry about accidental reassignments.
There are about a million ways to fix your button box issue while still using the Here namespace. Defining certain robust variable names as global that the button can use. Defining and using your own namespace (so you don't have to come up with a robust variable name). Redefining key variables in the button box's script so they are reassigned when the button is pushed. Using
c01484d022